text:
Good Evening,
I'm a french journalist currently based in New York. I'm trying to reach some former fans of Lance Armtrong... In order to get their impressions before the "confession" he's planning to make on the Oprah's sofa next week. I work for the national private french radio Europe 1, and can be reached by e-mail : email@example.com
Feel free to contact me for any further question !
Thanks, and have a nice day,


text: Anyways, with our recent lack of offense ever since the 0-3 loss in Philly are you guys worried about it yet? I understand we're getting shots and creating pressure which is great but we aren't scoring goals. I think it's a little alarming considering they only have 6 games left to regain their confidence in scoring before the playoffs start. So, just comment your opinions below on what you think about the Devils recent lack of goal scoring.

subset: commoncrawl


text:
Need some help?
A little about me:I'm a Christian momma who loves my kids and busy life. Browse about to learn about to see our daily adventures, education, struggles and triumphs in parenting and fun activities.
Common topics10 things adoption Alphabet award baking Bible Big Guy Big Kids Birthday calendar canada day cats Christianity christmas christmas tree church cleaning Crafts Cupcakes Easter education Elastoboy Electric Lady fall Family Flash Food foster care fun Games getting braces halloween Holidays kids little why love languages M. Hockey marriage Monkey Girl monkey girls Mr. Hockey music New Brunswick organization organizing outings parenting portraits Prince Charming random science siblings skating snowman spring sunday school therapy thoughts tot-book totschool traditions TV vacation valentine's day weekly update winter
- February 2013
- January 2013
- December 2012
- November 2012
- October 2012
- September 2012
- August 2012
- July 2012
- June 2012
- May 2012
- April 2012
- March 2012
- February 2012
- January 2012
- December 2011
- November 2011
- October 2011
- September 2011
- August 2011
- July 2011
- June 2011
- May 2011
- April 2011
- March 2011
- February 2011
- January 2011
- December 2010
- November 2010
Category Archives: Family
Just Had to Share
We got some family photos last night and I just had to share these ones! Some have Little Why and his little sister who recently moved in, Angel Eyes, in them so I can't post them here. They turned out … Continue reading
Posted in Family Tagged Family, portraits Leave a comment
A Little Birthday Girl
Monkey Girl turned 3 years old today! Her party is tomorrow but we did some celebrating today with balloons on her bed, opening one of her presents and birthday cupcakes. I'll be sharing those photos later on in a family … Continue reading
Posted in Family, Holidays Tagged Birthday, Family, Holidays, monkey girls Leave a comment
Summer School
…well, not really summer school! However, all the big kids teachers recommended some areas they could improve on and should work on this summer. The littles love doing work sheets and colouring the ABC's. So I decided to make them … Continue reading
Posted in Family Tagged education, Family, kids Leave a comment
Winter Boot Blues
This was too cute not to share… so here is a cute moment post for you all to enjoy. I have spent the past 48 hours trying to clean up our entryway cubbies, closet and shoe racks. Monkey Girl was … Continue reading
Posted in Family Tagged Family, Monkey Girl Leave a comment
Friday, June 8th, 2012 at 5:11pm
I took these pictures a while ago and just flipped through them when looking through iphoto. My intention when I took them was to mark a moment in time at our house and what better place to do that, than … Continue reading
Posted in Family, Random Thoughts Tagged Family, fun, random Leave a comment
Oh Canada, how I love thee!
Christmas is my favourite holiday. Anyone who knows me well, knows that I become Christmas crazy from about November 2nd (need a break after Halloween) until December 26th. (I shut down fairly quickly after the big day). I love to … Continue reading
Posted in Family, Holidays, Vacations and Trips Tagged canada day, Family, Holidays Leave a comment
Summer Fun, Ball Hockey and Grade 8 Graduation
We've had a busy month or so around here! It feels like we haven't even had much time to breath with all the things that have been going on! We took a trip to my uncle's place, near Ottawa. They … Continue reading
Posted in Family, Weekly Update Tagged Elastoboy, kids, weekly update 1 Comment
Tis the Wedding Season
As many young (and not so young) couples begin to wed during the beautiful summer months, we have had a wedding all of our own. It all started with Monkey Girl and Little Why sitting on the kitchen table. I … Continue reading
Posted in Family, Fun Stuff Tagged fun, kids, little why, Monkey Girl Leave a comment
Family Update – Been a While
Well as I finished going through my photos to make this update, I noticed that I had added 92 pictures to my update folder. I figured that may just be a few too many for a blog post so I … Continue reading
Posted in Family, Weekly Update Tagged Family, kids, weekly update Leave a comment
Banana Chocolate Chip Muffin Fun
It's been a busy time lately with hubbers away, kids sick, my cousin coming to stay with us and all the time at the park we have been having due to the lovely sunshine. However, when my little Monkey Girl … Continue reading
Posted in Family Tagged baking, Family Leave a comment


text:
EconomicDynamics Interviews Urban Jermann on Asset Pricing
AbstractUrban Jermann is Associate Professor of Finance at the Wharton School, University of Pennsylvania. His general fields of interest are international macroeconomics and asset pricing. In this interview, he talks about various aspects of his recent research.
Download InfoIf you experience problems downloading a file, check if you have the proper application to view it first. In case of further problems read the IDEAS help page. Note that these files are not on the IDEAS site. Please be patient as the files may be large.
Bibliographic InfoArticle provided by Review of Economic Dynamics in its journal EconomicDynamics Newsletter.
Volume (Year): 3 (2002)
Issue (Month): 2 (April)
Contact details of provider:
Postal: Review of Economic Dynamics Academic Press Editorial Office 525 "B" Street, Suite 1900 San Diego, CA 92101
Fax: 1-314-444-8731
Web page: http://www.EconomicDynamics.org/review.htm
More information through EDIRC
Order Information:
Web: http://www.EconomicDynamics.org/newsletter.htm
Related researchKeywords: Journal: EconomicDynamics Newsletter;
ReferencesReferences listed on IDEAS
Please report citation or reference errors to , or , if you are the registered author of the cited work, log in to your RePEc Author Service profile, click on "citations" and make appropriate adjustments.:
- Epstein, Larry G & Zin, Stanley E, 1989. "Substitution, Risk Aversion, and the Temporal Behavior of Consumption and Asset Returns: A Theoretical Framework," Econometrica, Econometric Society, vol. 57(4), pages 937-69, July.
- McCallum, Bennett T. & Nelson, Edward, 1998.
"Nominal Income Targeting in an Open-Economy Optimizing Model,"
Seminar Papers
644, Stockholm University, Institute for International Economic Studies.
- McCallum, Bennett T. & Nelson, Edward, 1999. "Nominal income targeting in an open-economy optimizing model," Journal of Monetary Economics, Elsevier, vol. 43(3), pages 553-578, June.
- Bennett T. McCallum & Edward Nelson, 2000. "Nominal Income Targeting in an Open-Economy Optimizing Model," NBER Working Papers 6675, National Bureau of Economic Research, Inc.
- McCallum, B.T. & Nelson, E., 1998. "Nominal Income Targeting in an Open-Economy Optimizing Model," Papers 644, Stockholm - International Economic Studies.
- Jeff Fuhrer, 2000.
"Optimal Monetary Policy In A Model With Habit Formation,"
Computing in Economics and Finance 2000
306, Society for Computational Economics.
- Jeffrey C. Fuhrer, 2000. "Optimal monetary policy in a model with habit formation," Working Papers 00-5, Federal Reserve Bank of Boston.
- Alvarez, F. & Jermann, U.J., 2000.
"Using Asset Prices to Measure the Cost of Business Cycles,"
Weiss Center Working Papers
00-1, Wharton School - Weiss Center for International Financial Research.
- Fernando Alvarez & Urban J. Jermann, 2004. "Using Asset Prices to Measure the Cost of Business Cycles," Journal of Political Economy, University of Chicago Press, vol. 112(6), pages 1223-1256, December.
- Fernando Alvarez & Urban J. Jermann, 2000. "Using Asset Prices to Measure the Cost of Business Cycles," NBER Working Papers 7978, National Bureau of Economic Research, Inc.
- Alvarez, Fernando & Jermann, Urban J., 2000. "Using Asset Prices to Measure the Cost of Business Cycles," Working Papers 00-1, University of Pennsylvania, Wharton School, Weiss Center.
- Weil, Philippe, 1990. "Nonexpected Utility in Macroeconomics," The Quarterly Journal of Economics, MIT Press, vol. 105(1), pages 29-42, February.
- Fernando Alvarez & Urban J. Jermann, 2005. "Using Asset Prices to Measure the Persistence of the Marginal Utility of Wealth," Econometrica, Econometric Society, vol. 73(6), pages 1977-2016, November.
ListsThis item is not listed on Wikipedia, on a reading list or among the top items on IDEAS.
StatisticsAccess and download statistics
CorrectionsWhen requesting a correction, please mention this item's handle: RePEc:red:ecodyn:v:3:y:2002:i:2:interview. See general information about how to correct material in RePEc.
For technical questions regarding this item, or to correct its authors, title, abstract, bibliographic or download information, contact: (Christian Zimmermann).
If you have authored this item and are not yet registered with RePEc, we encourage you to do it here. This allows to link your profile to this item. It also allows you to accept potential citations to this item that we are uncertain about.
If references are entirely missing, you can add them using this form.
If the full references list an item that is present in RePEc, but the system did not link to it, you can help with this form.
If you know of missing items citing this one, you can help us creating those links by adding the relevant references in the same way as above, for each refering item. If you are a registered author of this item, you may also want to check the "citations" tab in your profile, as there may be some citations waiting for confirmation.
Please note that corrections may take a couple of weeks to filter through the various RePEc services.


text:
Are Cloud-Based Health Record Banks Better Than HIEs?
This week a group of researchers published an opinion in the Journal of the American Medical Association suggesting that cloud-based record banks are a better way to share patient health data than HIEs. I think their view is interesting and sensible, and so here's a short recap.
The authors argue that cloud-based health record banks are a more logical way to share such data than HIEs, reports MedCityNews. After all, as they note, interoperability challenges make it "inefficient" to share patient data, as every organization has to be able to communicate with every other organization where a patient has been treated.
But cloud-based health record banks wouldn't pose the same challenges, they note. These record banks would be more scalable and easier for end institutions to use, according to the authors. Though local providers could keep copies of a patient's health record, the electronic health record would be stored in a cloud-based bank in the patient's community, they say. When patients moved, their records would travel to a different community health data bank.
This approach isn't just a theoretical discussion. It's backed by a group called the Health Record Banking Alliance, which was founded by one of the article's authors, Dr. William Yasnoff, MD, PhD, FACMI, former senior advisor for the National Health Information Infrastructure. The group has developed white papers outlining a proposed architecture and a business model for community health record banking.
My take on all of this is that the cloud-based community health record bank is a very worthwhile idea. After all, in theory it can greatly reduce the amount of infrastructure build out and interoperability issues providers face in connecting to HIEs.
That being said, the HIE concept is firmly planted in the industry's mind, and despite all of the issues involved in building out HIE networks, I don't see providers changing gears to embrace a completely new model. What about you?


text:
Festive Chicken Recipe
I hate to fall into a mealtime rut, so I'm always trying something new. This chicken is a wonderful dish when there's only tow at the table. Bacon, soy sauce and spices add lively flavor.Dorothy Pritchett, Wills Point, Texas
- 4 bacon strips
- 2 bone-in chicken breast halves with skin (8 ounces each)
- 3/4 cup soy sauce
- 6 tablespoons sugar
- 3 garlic cloves, minced
- 2-1/4 teaspoons ground ginger
- 1/8 teaspoon paprika
- 3 to 4 drops hot pepper sauce
- Wrap two bacon strips around each chicken breast; place skin side down in a shallow glass baking dish and set aside.
- In a small bowl, combine the remaining ingredients. Pour 2/3 cup marinade over chicken. Cover with plastic wrap and refrigerate for several hours or overnight. Cover and refrigerate remaining marinade.
- Drain and discard marinade. Bake at 325° for 50-60 minutes or until a meat thermometer reads 170°, basting occasionally with reserved marinade. Yield: 2 servings.
Originally published as Festive Chicken in Taste of Home February/March 1993, p13
Light-Bodied White Wine
Enjoy this recipe with a light-bodied white wine such as Sauvignon Blanc or Pinot Grigio.
Reviews for Festive Chicken
Please Log In or Join to add a rating and review.
Click stars to rate
Any changes to your rating or review will appear where you originally posted your review
Sort By :
Reviewed Mar. 19, 2012
I used boneless skinless breasts; I thought the marinade had a good flavor, but seemed a little salty (my husband disagreed about the saltiness) and I even used reduced-sodium soy sauce. Maybe next time I'll use reduced-sodium bacon, too.
Similar Recipes
More Recipe Collections
- All Taste of Home Magazine Recipes >
- Asian Dinners >
- Asian Recipes >
- Bacon Recipes >
- Baked Chicken >
- Chicken Breast Recipes >
- Chicken Dinner Recipes >
- Chicken Main Dishes >
- Chicken Recipes >
- Cooking For Two >
- Cooking For Two Recipes >
- Dinner for Two >


text:
Overview: Determining Best Purchasing Method
Over four million items are available in Stanford's SmartMart online catalog. This is the most efficient and cost effective method for purchasing items. Use the decision tree below to understand when other purchasing methods should be used.
For a text version of the above graphic describing how to determine purchasing methods, click here.
For help, please contact the Financial Support Center (3-2772).


text:
|Drug dogs catch a break
|Written by APB Staff
Is your drug detection dog actually able to smell narcotics and alert its handlers? According to the U.S. Supreme Court the answer is "not really."
The Supremes say police do not have to "extensively document" a drug-sniffing dog's reliability in the field to uphold its work in court.
In a much watched case among law enforcement, the high court was unanimous in overturning the Florida Supreme Court's ruling in the case of Aldo, a drug-sniffing police dog.
The lower court threw out drug evidence obtained against Clayton Harris during a 2006 traffic stop. Aldo alerted his officer to drugs used to make methamphetamine inside a truck.
But two months later, Harris was stopped again, Aldo again alerted his officer to the presence of drugs.
But no drugs turned up in the search.
The Florida court said in every case police have to bring records, including a log of performance in the field, to establish the dog's reliability in court.
The Supreme Court said that was placing too much of a burden on law enforcement.


text:
Regram @katdenningsss
Pun Eagle [crazycritterlife/via]
Bad Descriptions of Winter Olympic Events [mandatory]
Great descriptions!!
Anonymous said: theres no way to help an energy vampire?
Only if they seek help from you. They are selfish and self centered and will generally take any criticism as a personal attack.
True. They suck the life out of you and expect a thank you in return.
Brain surgeon walked six miles during snowstorm for emergency operation
(Photo: NBC News)
Not a snowstorm, a traffic jam or a daunting six-mile walk through fresh powder could stop an Alabama neurosurgeon from getting to the hospital where he was needed for emergency surgery.
(Source: larstheyeti)
My general mood lately.
(Source: sarahseeandersen)
Personally, while I see truth on both sides [of the minimum wage issue], the polarized version of this debate is beyond moronic. I'm pretty sure most Americans will agree that someone has to have the crappiest jobs, and I'm also positive that, at least since the Great Depression, this country has realized that some amount of government intervention is necessary to police the economy, because if big business had its druthers, french fries would be cooked by children pedaling asbestos bicycles that generate the energy for the stove.
Page 1 of 28


text:
Being the 8th largest U.S. city, San Antonio is a great place to have fun all year, even in the winter, as the coolest months are often full of mild, sunny days. The culture and beauty of the city are celebrated in its famous River Walk (Paseo del Rio), historic missions (including the Alamo), theme parks, and museums.
The city works hard and plays hard. At work, San Antonio is a leader in U.S. telecommunications, biomedical research, tourism, international trade, medical services and many other industries.
At play, the brilliance of the night life in clubs and restaurants, downtown and throughout the city, is balanced by plenty of daytime excitement at area waterparks and theme parks. Top attractions include Schlitterbahn (the world's largest waterpark), Six Flags Fiesta Texas, Sea World, and the San Antonio Zoo and Botanical Gardens. Do not overlook the opportunities for shopping at San Antonio's largest fashion mall (North Star), the Mexican Market (El Mercado), factory outlet shops, and the intimate specialty shops within walking distance of the university.
The city is home to the NBA San Antonio Spurs, and internationally diverse team represented by different countries. There are also many opportunities to enjoy high school and university sports events in everything from baseball to American football. Those who prefer to participate will find ample opportunities to play tennis, get into a friendly basketball game, play racquetball, or play volleyball right on the UIW campus. Or, hit the links on one of the city's many fine public golfcourses.
Visitors often enjoy exploring the unique culture and colorful history of San Antonio in its world-class museums of art, natural history and anthropology. The various cultural influences that make up the modern city of San Antonio are brought together in imaginative, educational exhibits at the Institute of Texan Cultures, which is located at the foot of the Tower of the Americas,where visitors can enjoy fun and dining with a panoramic view of the entire city.www.sanantonio.gov/visitors


text:
I couldn't resist these mother/son matching shirts. A toddler is probably the only acceptable age to wear a coordinating shirt with your Momma. I couldn't let this opportunity pass us by!
"See ya later alligator!"
"In a while crocodile."
I'll love you forever, I'll like you for always,
As long as I am living my baby you will be.


text:
18 hour ago
Actor Park Seo Joon Reveals His Dating Style in InStyle Men Magazine
"meanwhile, park seo joon's pictorials and interviews is in the first issue of "instyle men," which was released on august 18. Actor park seo joon revealed his.
3 day ago
Park Shin Hye gets an edgy style upgrade in black for "BRUNOMAGLI"
"do you like the edgier look on park shin hye?. Park shin hye gave an edgy upgrade to her girl next door image in black for "brunomagli"s 2014 f/w collection!park shin.
3 day ago
TaeTiSeo to make a comeback soon; releases 1st image teaser to upcoming.
" they further reveal that the trio's comeback is coming up soon and to hang on. "source: tenasia, my daily, star today. The first image teaser for their show has been.
11 day ago
5 Tips to Becoming the Next "Gangnam Style"
Look at all the pretty people!these paths seem easy, right? then try one of them or all of them! yes, there may be some important message in the song, but nobody is really.
12 day ago
Orange Caramel to drop new single with unique cartoon makeup style
The group, who always managed to exceed fan's expectations by their unique concepts, will return with cartoon makeup style this time. in the photos, each of the.
18 day ago
Park Bom"s style coordinator responds to Kemy"s diss track
the coordinator uploaded kemy"s picture onto a personal instagram account, tagged kemy"s id, and left a message, "these days, whether it"s a dog or a cow, they say they"re.
22 day ago
2AM's Jinwoon Discusses "Marriage Without Love," His Dating Style,.
Jinwoon—whose drama character, han yeo reum, has been getting involved in a "square romance" with han groo, yeon woo jin, and secret's sunhwa in the "marriage.
23 day ago
Jun Ji Hyun's airport style is chic and casual
In related news, actress jun ji hyun last week was selected as the 2014 star of the korean tourism by the korean ministry of culture, sports and tourism. actress jun ji.
23 day ago
"Reebok" release another paparazzi-style couple photo of models Sohee.
P and sohee, making the paparazzi theme of their shoots even more obvious this time as the two are surrounded by a plethora of photo journalists sticking cameras into their.
24 day ago
"Daddy, Where Are We Going" Will Invite a Foreign Family.
Filming will be conducted in accordance with the family's schedule. According to a representative, the team will be inviting a foreign family who came to korea on tour.
24 day ago
Ladies Code to come back with a funky, street-style song on August 7th
Are you looking forward to their comeback?source: osen. Many netizens are already anticipating what kind of image they will be coming back with, as it had been revealed.
28 day ago
Watch China's viral music video that mimics PSY's Gangnam.
Just like the craze for korean musician psy's gangnam style, the fervor for little apple has also excited people to create imitation videos or perform flash dances using.
28 day ago
Watch China's viral music video that beats Gangnam Style at its.
Just like the craze for korean musician psy's gangnam style, the fervor for little apple has also excited people to create imitation videos or perform flash dances using.
30 day ago
f(x) share their thoughts on their unique style of music in "The Celebrity"
"check out more of their pictorial and interview in "the celebrity"s august issue!. It"s not a love song, and i like that i get to do music that reflects the change in the.
1 month ago
"Gangnam Style" and "Gentleman" director to work with Psy again for his.
They are currently discussing about ideas for the new mv. Both "gangnam style" and "gentleman" achieved great success worldwide with "gangnam style" currently has over 2.
1 month ago
PSY to Work with the Director of "Gangnam Style" for New.
World star psy has begun gearing up for his comeback by recruiting director cho soo hyun for his new music video. "as their previous collaborations have been great successes.
1 month ago
Psy to work with "Gangnam Style" MV director once again
" as most of you know by now, the "gangnam style" mv made waves overseas, becoming one of the top videos watched on youtube with over 2 billion hits. " are you pumped.
1 month ago
SISTAR's Soyu Makes Any Style Look Good in Pictorial for Nylon Magazine
More detailed information on soyu's beauty and body secrets, as well as the full pictorial can be found in the august issue of nylon magazine. Recently, soyu posed for.
1 month ago
N-SONIC reveal a behind the scenes style MV for "Crazy"
Watch the mv above, what was the best part?. N sonic, recently returned with powerful and intense comeback much to their fans" delight! although the title track and mini.


text:
FNC's Pinkerton Cites MRC Study on Arizona Immigration Law Coverage
[MP3 audio available here; WMV video available for download here]
"As the MRC calculated, the coverage was 12-to-1 against the Arizona law," Pinkerton noted as he asked liberal contributor Ellis Henican if that disparity in the media's coverage of the issue bothered him.
When Henican brushed off the MRC study, Pinkerton also brought up how MSNBCer Tamron Hall posited that an Arizona sheriff's deputy may have "staged" a shooting to gain political support for the new Arizona law.
- NB Staff's blog
- Login to post comments


text:
Recently in Beauty Category
Rarely do we find a product that works well on red or irritated skin, but one of our editors swears by this moisturizer. It cushions and calms sensitive skin with a slight cooling feeling and a non-oily consistency. Great packaging is an added bonus.
Lotion and Cream $22.50 each, exclusively at kohls.com
Here in New York, the long winter weather often leaves our lips chapped, flaky and peeling. If your lips need first aid beyond the basic balm, you'll love the LipKit, a portable package of five products that will save your kisser in no time.
Created by a cosmetic dentist, the kit includes Lip Renew exfoliator to smooth, Lip Dew to moisturize, Lip Fill to prevent feathering and condition, Lip Plump for sensual lips and finally Lip Keep to apply over lipstick for all-day wear. All five steps come packed in a tiny mesh bag.
$59.95 at thelipclinic.com
Subscribe to our newsletter to receive one entry to win one of three fabulous beauty packages worth over $90 from Jaime Earl.
Already a subscriber to our newsletter? You're automatically entered for a chance to win!
Want more chances to win? Refer your friends and have them put your email address in the "How did you hear of us?" box when they sign up for our newsletter.
Jaime Earl is a unique, all natural line of effective facial and body care products for men and women. Jaime Earl skin care products are designed to support and encourage the skin's ability to take care of itself naturally. These therapeutic preparations restore balance, moisture and health to the skin. Their effectiveness is attributed to the use of high-quality ingredients and unique processing.


text:
1) Auction Day Player Pool and Salary Cap
A) Our $520 Salary Cap per team applies only to Auction Day.
B) Any and every player in the world can be bought on Auction Day, no matter what league or level he played in the preceding season. No exceptions.
2) Sunday Evening Blitzkrieg- Eight 2-minute Rounds
A) At least 80% of each team's weekly moves shall be made in a single 15-minute real time window, from 9 to 9:15 p.m. EST
B) One successful bid/acquisition per team per round.
C) Priority is based solely on reversed order of standings from previous day.
D) When the clock strikes 9:16 it's over!
3) Blind Vickery FAAB Bidding - Exclusive for 2 transactions:
A) Waiver Claims and
B) First Round Free Agent Acquisition.
C) Here is where we spend our FAAB.
4) GM Style Roto
A) 6 X 6 categories: Standard Roto 5 X 5 categories, plus IP and PA.
B) This is a General Manager/Team Owner styled League, not one where a Daily Manger sets lineups.
C) If they're on your team they're generating stats every day.
D) No Bench.
5) Dynasty-Keeper League
A) Each Team can keep up to 15 players from season to season.
B) Minimum 11 teams our first season in 2013 and eventually grow to 13-team league in subsequent seasons.
6) Roster Slots
A) 3 x Catchers,
B) 1 x Swing Man (can alternate between any hitter or pitcher),
C) 6 x outfielders,
D) 2 x 1B,
E) 2 x 2B,
F) 2 x 3B,
G) 2 x shortstop,
H) 2 x middle infield,
I) 2 x corner base,
J) 2 x utility,
K) 22 x pitchers.
7) Team Fee and Prize
A) Ten Bucks per team covers 3rd party Stat service provider.
B) Pennant Winner achieves Honor and Glory and can walk with more than a little Swagger.
We're looking for two fantasy baseball team owners. After 26 consecutive seasons we came to an obvious conclusion that the people who do the best, the people that stick when they stumble as we all do, and the people who are and have the most fun, well, they all have one thing in common. They love baseball. They came to fantasy baseball as an extension of being a baseball fan first and foremost, not the other way round.


text:
Shared Talend Open Studio Job Repository with Subversion4
Talend Open Studio is an open source Data Integration/ETL tool that allows creating complex jobs through an easy-to-use graphical interface based on the Eclipse platform. It allows for rapid development through its hundreds of prebuilt components to source and target systems.
However, as great as Talend is, there is one caveat; the FREE version does not come with version control and a shared job repository integrated into the product.
This means that if one developer created a job design, and a second developer needs to make modifications to it in the future to handle new requirements, that second developer would not able to do it because that job is in another's developer workstation.
- You will need to have a Subversion Repository (SVN Server).
- You will need a Subversion client, TortoiseSVN. This will allow you to commit code (or any other type of file you want to version) and checkout code from Subversion server. I recommend that everybody is on the same version, Iuse the latest version at the moment, which is 1.7.5
- In order to develop new and or maintain existing Talend jobs you will need Talend Open Studio. You can also download it from Sourceforge.net (no questions asked). We are using version 5.0.2. I would also recommend that everybody is on the same version.
- In order to run jobs from the command line (like they are going to run once deployed to the server) you are going to need the Java JDK 1.5 or greater on your machine. Instructions on how to set up java on your machine can be found here
Here, I will show you how to integrate Talend with SVN so that an entire team can work on the same jobs code base.
- Checking Out a Talend Project from a Shared Job Repository
- I Cannot View all my Jobs, Contexts, and Metadata in my TOS!!!
- Creating a Shared Job Repository
- Checking In New Changes to a Shared Job Repository
- Updating your local workspace
- Resolving File Conflicts
Checking Out a Talend Project from a Shared Job Repository
- If you have TOS open, close it.
- Go to your Talend workspace. In my case(C:\Talend5.0.1\TOS_DI-Win32-r74687-V5.0.1\workspace)
- Right click with your mouse->SVN Checkout…
- Put the SVN Server URL of your Repository:
- The Talend Project from the server should be in your workspace now:
- Open TOS. You should see the project listed as follows:
- All the Jobs associated to that Project should be visible. If not, read the next section of the tutorial.
I cannot view my Jobs, Contexts, and Metadata in my TOS!!!
After checking out an entire Project from Subversion or doing an SVN Update on an existing Project in your workspace it is possible that your GUI has not picked up the changes. You can do two things to take care of that:
- Do a Refresh of the Repository left panel
- Do an Import Items. From TOS, Right click on Job Designs->Import Items
Creating a Shared Job Repository
- Create a Talend Project. This Talend project will house multiple Jobs. (Remember not to confuse Project with Job)
- Navigate to your Talend workspace. Right clickon the project->TortoiseSVN->Import…
- The following prompt will come up. Enter your repository location and a message
- You should see the following message:
- Type your SVN Repo URL on the browser and verify that contents are there
Checking In New Changes to a Shared Job Repo
Rule of Thumb: ALWAYS, ALWAYS, ALWAYS before checking in anything, do an SVN Update first and resolve any existing conflicts. Read the next section for how to resolve conflicts.
If you do not have any conflicts to resolve, you are ready to commit your changes. Do as follows:
- Right Click on the Project through your C:/->TortoiseSVN->Check For Modifications
Note: You can skip this step and go to Step 2.
This will look for modifications locally.
- Right click on your project in your workspace->SVN Commit…
- Click'OK'. Now other developers should be able to do an SVN Update and work off of the latest changes.
Updating your local Workspace with latest stuff from the Job Repo
- Right click your Project folder in C:\ drive->SVN Update
In this case there was nothing new in the server, so nothing was updated. If you would have got conflicts, please read the next section.
Resolving File Conflicts
When doing shared development with Version Control Systems (Subversion, Git, CVS, etc…) it could be that another person has edited a common file that you have also edited. What we want here is to keep the other developer's change as well as ours. We have to resolve a conflict. This can be done in 5 easy steps.
- Go to your Project folder (C:/path_to_your_talend_workspace_project_folder) and do Right Click/SVN Update. This will update any local files with newer ones from the server
- If it encounters a file that you have also edited, it will raise a conflict. YOU MUST RESOLVE IT!!
- Right Click on the Conflicted file and select Edit Conflicts. The TortoiseMerge editor will come up:
- To merge files do as follows:
- Finally, you must mark the file as resolved
What if I want to accept their file and Override mine?
Do Right Click on Conflicted file/Resolve conflict using 'theirs'
Do Right Click on Conflicted file/Resolve conflict using 'mine
It is a little bit cumbersome, but once you get the hang of it, it is not that bad. It is unfortunate that they do not release the Talend Open Studio version with hooks to Subversion and Git right out of the box. I doubt, that organizations are strictly buying their product Talend Integration Studio based mostly on the Shared Repository.
How too Root your Kindle Fire plus install Android Market23
Here I am document the steps I have followed to root my Kindle fire and to install Android Market on it. This is not my own work, but a compilation of other's work that has worked out well for me.
The high level steps are as follows:
- Get a Micro-USB to USB cable.
- Download and Install the JDK (Java 6 or later reommended).
- Download and Install the Android SDK.
- Install Kindle USB Drivers.
- Root your Kindle Fire with SuperOneClick.
- Install Android Market.
- Install OTA RootKeeper app from Android Market.
Get a Micro-USB to USB cable
Amazon has designed the Kindle Fire to be a media consumption device only, so they did not include a Micro-USB to USB cable in the box; they just included a power adapter. This means that they do not want you hooking up the device to your PC. They are selling this mighty tablet at a loss hoping to make the money back on all the pay content available on the Amazon Cloud Store.
Anyways, check the link below for the cable that worked for me as the first one mentioned there DID NOT WORK.
Download and Install the JDK
To install the JDK (Java Development Kit) you can follow the top portion of this other post here
Download and Install the Android SDK
To install the Android SDK, please follow this tutorial
Install Kindle Fire's adb USB driver
This step is necessary so that you can plug your Kindle Fire to your PC through a Micro-USB to USB adapter and have your PC recognize it. This way you will be able to drag and drop files to your Kindle Fire. Note: This has nothing to do with rooting your device. All these does is give you the power to add content to your device such as Music, Photos or PDFs etc…
Please follow the instructions here
If you do not wish to root your device, stop here.
Root your Kindle Fire with SuperOneClick
- Download SuperOneClick from Shortfuse I used version 2.3.1
- Plug your Kindle Fire to your Computer. You should see a message that states that you are ready to transfer files to the device.
- Run SuperOneClick executable and click the Root button.
- Let SuperOneClick do the work. Your device should be rooted.
Install the Android Market
I have found many threads online on how to install the Android Market, but the only one that worked for me was the found in this YouTube Video. After you are done with that, you should be able to download apps from the Android Market
Install OTA RootKeeper app from Android Market
Once you have rooted your device and you are logged in as the root user you will not be able to download Movies from the Amazon store. The "Play Now" button will be grayed out.There is a workaround.
- Download OTA Rootkeeper app from Android Market.
- Temporarily un-root your device.
- Force stop your Amazon Video app if running.
- Access an Amazon Video again, you should be able to watch it now.
It is explained in this Youtube Video
Have Fun!!!
Add Oracle JDBC drivers to your local maven repository0
The steps to add the Oracle JDBC Drivers to your local Maven repository can be found here:
Here I am recording them for me just in case that entry goes away:
Step 1
Find the oralce jdbc jar in your oracle client software. If you do not have the Oracle Client, install it.
Step 2
cd to the directory where the oracle client jar is located. In my case: C:\ORA10gClient\jdbc\lib
Step 3
Install the jar by typing the following maven command:
mvn install:install-file -Dfile=ojdbc14_g.jar -DgroupId=com.oracle \ -DartifactId=oracle -Dversion=10.2.0.1.0 -Dpackaging=jar -DgeneratePom=true
Step 4
Add the following dependency to your project's pom.xml
com.oracle oracle 10.2.0.1.0
Achieving Transparency with JNDI0
Enterprise Web Applications are distributed systems. Typically, enterprise solutions are composed of many computers with different Operating Systems, one or more data sources (in many occasions from different vendors) and even of different architecture (relational, hierarchical, dimensional, ISAM, etc…). One important thing to remember is that to the end user it looks like one system.
The advantages of distributed systems are the different types of Transparency:
- Enterprise resources should be accessible and how they are accessed should be hidden from the user.
- The communication protocols the web application uses (HTTP, SOAP, JMS, JNDI etc…) to interact with other services or applications should be hidden from the user.
- The user should not be able to tell that different resources are scattered across the network, neither where they are located.
- The user should not have any critical information that might compromise the security/integrity of a subsystem.
- Distributed applications should be easy to extend, repair, or even move components around.
In this post I am going to talk about how to achieve Access, Location and Migration Transparency with JNDI (Java Naming Directory Interface).
Problem: Have you ever seen this at your Enterprise?
This is a typical log in screen to enterprise applications that use Oracle Forms & Reports technology. Even though this is old technology you will be surprised to see how many enterprises are running business critical applications under this platform; there is nothing really wrong with that, just that there are better enterprise application development platforms in the market than Oracle Forms and its successor APEX. For example J2EE nowadays most commonly known as JavaEE and .NET.
The main disadvantages are as follows:
- Oracle Forms only work with Oracle RDBMS (PL/SQL as the language).
- Migrating to a new database would require to rewrite your entire business logic to the platform of choice (Java, .NET, T-SQL, SQL PL, Postgres PL, etc…).
- Cannot benefit from current agile software trends of Test Driven Development and Continuous Integration (at least to my knowledge).
However, the biggest problem (what we are going after here according to the topic of the post from the screenshot above) is as follows:
- The database text field.
- The Database Administrator (DBA) will have to maintain as many database user accounts as users are in the application.
What problems do you see?
- Since when an end user should know the database name to connect to? You have violated Access Transparency here.
- If the application has 100 users for example. Will the DBAs have to maintain 100 users in QA and PROD environments? That sounds like a lot of tedious work and opportunity for mistakes.
- What happens if you encounter a tech savvy user that manages to create an ODBC connection to your production database? Now you have a big security problem here.
- Did you enforce all UPDATE, DELETE logic to go through Stored Procedures? Have you given the database user accounts rights to execute Stored Procedures only?
- If not, the user accounts to the application now have direct rights to execute UPDATES and DELETES on certain tables. Now you have a big security problem here.
A lot of these problems can be easily solved in JavaEE by using JNDI.
Solution: Setup a JNDI Connection Pool with GlassfishV3 App Server
To illustrate the solution I have installed the following components:
- GlassFish Server Open Source Edition 3.1: A full blown Java EE 6 compliant application server.
- PostgreSQL Database Server 9.0.4: The world's best open source database.
Note: I have chosen these two components but any other RDBMS (MySQL, MSSQLServer, Oracle, DB2, etc..) and any of these app servers (JBoss, Oracle WebLogic, Websphere) would have a similar way of setting up a JNDI Connection Pool.
Do as follows:
- Download the appropriate PostgreSQL JDBC driver jar and place it in C:\glassfish3\glassfish\lib.
- Start GlassFish application server by exectuting startserv.bat located at C:\glassfish3\glassfish\bin (or wherever you decided to install it).
- Open up a browser tab and go to the GlassFish Administration Console. http://localhost:4848/
- In the left navigation menu click on the New… button under Resources/JDBC/JDBC Connection Pools .
- Enter a Pool Name and select the appropriate database drivers as follows (Click on the image to enlarge):
- Click Next and fill Step two as appropriate based on your settings as follows (Click on the images to enlarge):
- Click the Ping button. You should see a message as follows:
- Click the Finish button.
- Now we have created Connection Pool Successfully. Our next step is to make it available through a logical name with JNDI.
- In the left navigation menu click on the New… button under Resources/JDBC/JDBC Resources.
- Enter a JNDI Name and select the Connection Pool that we have just created and Click OK (Click on the image to enlarge):
With this new setup we have the advantages as follows:
- Access Transparency: We are not giving any clue how the resource is accessed. Now nobody knows the database name.
- Location Transparency: Only GlassFish administrators and DBA(s) now know where the resource is actually located. Even the developers would not know where the database really is (I know this does not actually happen) but there will be nothing in the application code or configuration files that will unveil that.
- Migration Transparency: The database now can be moved from one server to another, the DBA might want to change the default port, or the user name and password need reset. Any of these changes will not affect the application at all because it can be manged by an administrator through the GlassFish Admin Console.
- LDAP Authentication: With this setup we can now delegate the Authentication piece of the application to an LDAP service, which would allow for Single Sign On across the Enterprise.
- 1 Database User Account Only per Connection Pool: We now have reduced all the database user accounts to one and only one.
- Same JNDI name, multiple environments: In an Enterprise you will most likely have a GlassFish QA instance and a GlassFish PROD instance. If you set up your JNDI Name to be the same in both (jdbc/grailsRocksApp in our example) you can deploy interchangeably without having to do any changes anywhere.
Configuring your Spring JDBC application to use JNDI
If you are using Spring JDBC to persist you database, this is what you have to do to obtain a DataSource through JNDI. Usually, in Spring web applications you will separate you context xml files in several as follows:
- appName-servlet.xml
- appName-datasource.xml
- appName-services.xml
- appName-security.xml
In the appName-datasource.xml put the following snippet:
Configuring your Spring + Hibernate app to use JNDI
If you are using the Hibernate in your Spring application to handle persistance. You would do as follows:
com/companyName/appname/domain/Student.hbm.xml com/companyName/appName/domain/Course.hbm.xml false org.hibernate.cache.NoCacheProvider hibernate.grailsRocks false org.postgresql.Driver 1 thread postgres org.hibernate.dialect.ProgressDialect true true true true 1 pool_postgres yes 'Y', no 'N' false true
Configuring your Grails application to use JNDI
If you are developing in Grails and want to use JNDI for connection pooling, you would do as follows in the DataSource.groovy:
dataSource { pooled = true } hibernate { cache.use_second_level_cache=true cache.use_query_cache=true cache.provider_class='net.sf.ehcache.hibernate.EhCacheProvider' } // environment specific settings environments { production { dataSource { jndiName="jdbc/grailsRocksApp" } } }
Asides from the advantages mentioned above we also get the following:
- Connection pooling management and distributed transactions: If you use a regular DataSource like illustrated in the Spring JDBC example above, it's ok for very small applications because it is not thread-safe, it's single threaded. The server will lock down other requests, this will impact performance. So if you are in a concurrent environment you are better off using JNDI as the application server take care of handling connection pools threads for you.
How to use "Factory Method"2
The Factory Method design pattern is a creational design pattern. This means that its main objective is to create objects. The official definition by GOF is as follows:
Define an interface for creating an object, but let the subclasses decide which class to instantiate. Factory Method lets a class defer instantiation to subclasses.
Note 1: By "decide" in the definition above it does not mean that the subclass magically decides which object to create (at least not in a parameterized version of the Factory Method). The decision actually happens in the client; however, the work of creating the appropriate object that the client is going to work with is done by the subclass that overrides the Factory Method.
Note 2: This pattern relies on inheritance for creating objects. The current trend is to use the Abstract Factory Pattern, which relies on composition.
Note 3: By "client" I mean the calling code, the final user of the API that makes up the subsystem.
The Problem
Consider a simple application that deals with vehicles with the following hierarchy in the mind map below:
Question: What would happen if we want to create a particular type of vehicle and we do not use any kind of Factory Pattern?
That we would be giving the client the responsibility of having to know how to instantiate a particular type of Vehicle. As far as the client is concerned it just wants a Vehicle, then it's going to do whatever he wants with it.
Question: What would happen if we add many more types (Car, Truck, Bike) and many more subtypes (Van, Sedan …)?
In this example it may not be as obvious as we only have three types of Vehicles (Car, Truck, and Bike) and two specific implementations under each. But if we had ten different cars, trucks, and bikes then the amount of if/else logic that you would have to do in the client in order to instantiate the right type would be quite tedious. This is considered boilerplate code at the same time that is difficult to maintain.
Question: What if you want to add a new type of Vehicle (e.g a Boat)?
If you do not use the Factory Method or other Abstraction layer you would have to make changes to the client to support that.
The Factory Method
Since the definition of the Factory Method states that the purpose is to defer instantiation of an object in the family to a subclass, then we have to make the class that will contain the factory method abstract. Also to ensure that subclasses are the ones really responsible for the creation of a particular object (in our case it will be a Vehicle) we have to provide with an abstract method, this way subclasses must provide the implementation. This method is what is popularly known as the factory method. It usually takes the name of createXYZ or newXYZ (that seems to be the industry standard for what I have seen) . It looks as follows:
package factorymethod; public abstract class VehicleFactory { //Factory method abstract Vehicle newVehicle(String type); }
The Common Interface
The client should work with a known interface, this way it will allow us to change the subsystem transparently. It will look as follows:
package factorymethod; import java.util.List; public abstract class Vehicle { public abstract List<String> getFeatures(); public abstract List<String> getSpecs(); }
The Factory
A Car Factory would be responsible for knowing all the types that fall under the category of Car. Do you see how much cleaner is to have the branching logic in this factory rather than having a big method somewhere with all types in there? It would look as follows:
package factorymethod; public class CarFactory extends VehicleFactory { @Override Vehicle newVehicle(String type) { if(type.equals("Sedan")){ return new Sedan(); }else{ return new Van(); } } }
The Product
This is what the client asked for:
package factorymethod; import java.util.List; public class Sedan extends Vehicle{ //Put some specific properties of a SEDAN here //Put some other specific methods of a SEDAN here (To differentiate from Van for example) @Override public List<String>getFeatures() { //Put code to query your Car database here return null; } @Override public List<String>getSpecs() { //Put code to query your Car database here return null; } }
The Client
Notice how the client uses the appropriate factory to go get the specific type of product. If the client wanted a Bike for the example, the Car and Truck factories would be ignored. Also notice that since the client gets a generic Vehicle product you can add many more specific products transparently without affecting the client code. It looks as follows (You could improve the client using Reflection like done at the end of this other post) :
package factorymethod; public class Starter { public static void main(String[] args) { VehicleFactory vehicleFactory = new CarFactory(); Vehicle vehicle = vehicleFactory.newVehicle("Sedan"); vehicle.getFeatures(); vehicle.getSpecs(); } }
Now you could repeat what I have done above for the BikeFactory, and TruckFactory and its corresponding products as follows (Click on the image to enlarge):
Important: Your Specific "Products" should really be different (algorithm or logic wise)
While studying this pattern carefully from Head First Design Patterns (p.129) there was something that bothered me with their Pizzas example. If you look at all their specific Pizzas there wasn't really any difference between the products, only String values!!! Yes that is different but what good is that in real life? If all that was read from a database for example you could get away with one class only. There was no need for 8 different Pizza types.
So my point is to make sure that you really have a different algorithm or logic in each specific product. Otherwise you will have added DRY (Don't Repeat Yourself) in your application. (Unless I am totally missing something here )
In our example we could say that we originally started our application supporting Cars only (Sedans and Vans), but then our application became popular and we decided to buy two existing databases that had support for Trucks(Pickup and Commercial) and Bikes(Scooter and DirtBike). Then it is safe to say that we need all these concrete objects as each getFeatures() and getSpecs() would contain an specific query targeting that particular data model and RDBMS.
Similar to the Adapter pattern where the main goal was to decouple the client from the actual implementation by giving it a known interface, the Factory Method Pattern also gives us that kind of flexibility. You should use a factory method:
- When you want to hide object creation knowledge from the client.
- When you want the client to always get a known interface. In this case, it will be an abstract object.
- When you want to add multiple implementations transparently in the future without affecting the client(s) API.
- To avoid branching "spaghetti code" when you have multiple variations of an object and you try to solve it by means of a lot of "if/elses" in a single location.
- When you have multiple variations of a particular object and you do not have a default one.
- It is also very good to illustrate how Polymorphism works.
- It depends on inheritance, so changes to the superclass can break existing code in subclasses. Inheritance usually requires thorough testing so Joshua Bloch in Effective Java recommends to use Composition over Inheritance.
- Joshua Bloch also recommends to use inheritance only when classes are designed for inheritance. (The factory method is designed for inheritance, so not really a disadvantage).
- This pattern is only good for a hierarchy of three levels. I have tried solving this with more levels and I had to much more inconveniences than advantages (had to create intermediate empty classes that were not bringing more information). For such situations, you should look into the Builder Pattern.
Binding jQuery UI Datepicker to Grails Domain20
In this post I am going to show you how you can write a custom tag to use the JQuery UI datepicker instead of the <g:datePicker> tag provided by Grails out of the box.
How <g:datePicker> tag works
When you have a Date field in your Grails domain class and have generated the default views for that domain you will notice that the date field(s) will be defaulted to three drop down boxes (year, month, day). Upon submit four request parameters will be sent as part of the <g:datePicker> tag. Say that our date field in our domain is declared as orderDate. The request parameters associated with that request would have the following naming convention:
All these parameters are necessary for grails to do the appropriate binding to the orderDate field and to successfully save to the database.
What if I do not want to use Grails default date picker?
While this is good, since Grails provided it for free without writing a single line of code, it is not very efficient for the end user to have to select three drop downs. I usually use the JQuery UI framework a lot in my Grails and Spring apps for widgets and DOM Scripting. Do as follows:
- Download your favorite Jquery theme.
- Unpack it, look at the demos (Specially at the path structure for js, css, and themes)
- Bring that into your Grails web-app folder
- Copy the themes folder from the download straight out of web-app folder.
- Create a jquery folder under js.
- Put jquery-1.4.4.min.js under jquery folder created in previous step.
- Copy the ui folder from the download to the jquery folder created in step 2.
That should give you the proper setup for you to start adding jQuery and jQuery UI components to your application.
Next I will show how to bind a Jquery date picker to a grails date field in a domain class in two different ways. They are as follows:
- Without writing a Grails custom tag
- Writing a Grails custom tag
Using Jquery date picker without using Grails custom tags
Step 1: Enter the following in head of your create.gsp
Step 2: Replace the g:datePicker tag with
Step 3: Create the following Javascript file coche.js. This is responsible for populating the hidden fields once a date has been selected. The code is as follows:
$(document).ready(function() { $( "#orderDate" ).datepicker({ onClose: function(dateText, inst) { $("#orderDate_month").attr("value",new Date(dateText).getMonth() +1); $("#orderDate_day").attr("value",new Date(dateText).getDate()); $("#orderDate_year").attr("value",new Date(dateText).getFullYear()); } }); });
Step 4: Run your grails application go to the create.gsp select a date through the calendar and click on create. You should have your custom orderDate field successfully binded in the domain orderDate field just like if you would have used the default <g:datePicker> grails tag.
A jQuery Date Picker Grails Custom Tag
There is nothing wrong with the first approach but it has a couple of disadvantages:
- For every jquery date picker that I want to add to the form I have to remember to add three extra hidden input fields with the naming convention dateDomainFieldName_year, dateDomainFieldName_month, dateDomainFieldName_day.
- For every jquery date picker field that I have in a single page I will have to add about 8 lines of code of Javascript to populate the hidden fields once a date has been selected.
So my goal is to write a Grails Custom tag that will be responsible for doing the two things above. Additionally it will work for as many date fields you want in your form.
Step 1: Create a Grails Tag Lib as folllows:
Step 2: Replace your input orderDate and associated hidden fields for this:
Step 4: Remove the coche.js reference from the head tag in your create.gsp
You should be able to add many jQuery calendars without having to do DOM scripting to populate hidden fields as the custom tag is already doing it for you.
The grails tag for the jQuery UI date picker widget has the advantages as follows
- It creates three hidden input fields dateField_day, dateField_month, dateField_year.
- It's responsible for populating these hidden input fields when a date has been selected from the calendar.
- Supports having multiple date fields in the same form without any conflict.
The Code
The code can be found at this github repository https://github.com/dariopardo/JQueryDatePickerGrailsTag
How to use the Adapter pattern4
The definition of the Adapter design pattern according to GOF (Gang Of Four) in Design Patterns: Elements of Reusable Object-Oriented Software is as follows:
Converts the interface of class into another interface the clients expect. Adapter lets classes work together that couldn't otherwise because of incompatible interfaces. (p.139)
To illustrate it we are going to start with a code base and then try to integrate it to an "external" code base using the Adapter design pattern.
The adapter pattern comes in two flavors:
- Object Adapter: Uses interfaces to benefit from polymorphism; this flavor is used if your language of implementation is Java.
- Class Adapter: Can be used in languages that support multiple inheritance, this technique can be used if your language of implementation is C++.
In this example we are going to look at the Object adapter implementation.
Note 1: I interpret that "clients" in the definition by Gang of Four above means the calling code. In some instances "client" might also refer to the starting code base.
Note 2: "Interface" in the definition by Gang of Four above means properties and methods of a class. But it can also be a proper Java interface.
Conceptually both systems that you are trying to integrate must have a coherent conceptual correspondence.
A real life example of adapters I faced is when I have purchased Europe based electronic devices that I later had to use in the US. In order to power them up, or charge them up depending on the device I had to get a Targus Travel AC Power Adapter. Recall that the adapter worked in that case because even though the interfaces were different, the problem domain was the same.
Let's say that we have a program that works with US based heating devices; its reputation is so good that it has become a market leader, so now we want to go global and sell it in Europe and other parts of the world.
Starting Code Base
Because we are good OO coders, we code to interfaces. Here is our interface for US heating devices:
package adapter; public interface USHeatingDevice { public int voltage(); public int frequency(); }
Here is an implementation of our interface:
package adapter; public class TowerHeater implements USHeatingDevice { public int voltage() { return 120; } public int frequency() { return 60; } }
Here is what I interpret as the client per Note 1 above:
package adapter; public class Starter { public static void main(String[] args){ USHeatingDevice usHeatingDevice = new TowerHeater(); System.out.println(usHeatingDevice.voltage() + " V"); System.out.println(usHeatingDevice.frequency() + " Hz"); } }
Running the program produces the following output:
60 Hz
Now we want/need to expand our program to work with foreign heating devices manufactured in Europe, South America, Asia etc. The problem is that their voltage and frequency are not the same, so our program will not work. Imagine that there is a vendor that has already developed an interface that can be hooked into our program so that it can work internationally. The code is illustrated below.
Vendor Code Base
Because the vendor also uses good OO techniques, here is their interface for non US heating devices:
package adapter.vendor; public interface NonUSHeatingDevice { public int tension(); public int hertz(); }
Here is their European implementation:
package adapter.vendor; public class EUTowerHeater implements NonUSHeatingDevice { public int tension() { return 230; } public int hertz() { return 50; } }
Notice two things here:
- The voltage and frequency have different values.
- The interface methods developed by the vendor have different names.
In order to use our program using the non US implementation we would have to find all our places where we make calls to voltage() and frequency() and put some sort of if/else logic to support calling tension() and hertz() methods when using the program in Europe.
Well that could be quite tedious, couldn't it? Here is where the design pattern comes into place; the goal is to write and adapter that will implement our current existing interface (USHeatingDevice) but in reality will be executing an implementation of (NonUSHeatingDevice) interface. This technique will allow us to keep voltage() and frequency() calls throughout or code and we will only have to make a small change in the calling code, the client.
Note: Some authors state that the adapter pattern allows you to not do any code changes in the "client" once you have created the adapter class see (p.237) of Head First Design Patterns. I completely disagree with that and you will see it in the following snippets.
First let's create the adpater:
package adapter; import adapter.vendor.NonUSHeatingDevice; public class HeaterAdapter implements USHeatingDevice { private NonUSHeatingDevice europeanHeatingDevice; public HeaterAdapter(NonUSHeatingDevice europeanHeatingDevice){ this.europeanHeatingDevice = europeanHeatingDevice; } public int voltage() { return europeanHeatingDevice.tension(); } public int frequency() { return europeanHeatingDevice.hertz(); } }
We see as follows:
- The Adapter class implements our known interface (USHeatingDevice), the one we are used to work with (because it will be the one that the client will continue to work with).
- The Adapter class has a data member that is of type that we are adapting to (NonUSHeatingDevice).
- The implemented methods call the matching methods in the non US heating device interface.
As you can see we are dressing up the HeaterAdapter by making it look like a US heater device, but really behaving like a non US heater device.
Now let's make the changes to the client to work with the HeaterAdapter that we have just created:
package adapter; import adapter.vendor.EUTowerHeater; import adapter.vendor.NonUSHeatingDevice; public class Starter { public static void main(String[] args){ USHeatingDevice usHeatingDevice = null; NonUSHeatingDevice euTowerHeater = null; if(args[0].equals("US")){ usHeatingDevice = new TowerHeater(); }else if(args[0].equals("EU")){ euTowerHeater = new EUTowerHeater(); usHeatingDevice = new HeaterAdapter(euTowerHeater); } System.out.println(usHeatingDevice.voltage() + " V"); System.out.println(usHeatingDevice.frequency() + " Hz"); } }
Notice the changes in the client from the original Starter.java; Pay attention to lines 19 and 20, we go through the adapter to instantiate a USHeatingDevice, which will behave as a non US heating device. As we can see on lines 24 and 25 The rest of the program is still working with the same interface as it was using before the vendor code was integrated into our application.
If we were to run this program with the EU command line argument we would get the result as follows:
50 Hz
Adapter Pattern as an abstraction layer
Another advantage of this pattern is that many implementations of the adaptee (vendor interface) could be added by the vendor and we would not have to touch a line of code in our HeaterAdapter.java thanks to Polymorphism.
Let's say that the vendor add implementations of their non US heating device interface for countries such as Jamaica, Libya, and Colombia which have different electric power specification.
package adapter.vendor; public class JamaicaTowerHeater implements NonUSHeatingDevice { public int tension() { return 110; } public int hertz() { return 50; } }
The colombian implementation….
package adapter.vendor; public class ColombianTowerHeater implements NonUSHeatingDevice { public int tension() { return 110; } public int hertz() { return 60; } }
…and the Libya implementation
package adapter.vendor; public class LibyaTowerHeater implements NonUSHeatingDevice { public int tension() { return 127; } public int hertz() { return 50; } }
Let's see the changes we have to make to the client, without touching the adapter at all.
package adapter; import adapter.vendor.*; public class Starter { public static void main(String[] args) { if (args.length > 0) { USHeatingDevice usHeatingDevice = null; if (args[0].equals("US")) { usHeatingDevice = new TowerHeater(); } else if (args[0].equals("EU")) { NonUSHeatingDevice euTowerHeater = new EUTowerHeater(); usHeatingDevice = new HeaterAdapter(euTowerHeater); } else if (args[0].equals("JM")) { NonUSHeatingDevice jamaicaTowerHeater = new JamaicaTowerHeater(); usHeatingDevice = new HeaterAdapter(jamaicaTowerHeater); } else if (args[0].equals("CO")) { NonUSHeatingDevice colombianTowerHeater = new ColombianTowerHeater(); usHeatingDevice = new HeaterAdapter(colombianTowerHeater); } else if (args[0].equals("LY")) { NonUSHeatingDevice libyaTowerHeater = new LibyaTowerHeater(); usHeatingDevice = new HeaterAdapter(libyaTowerHeater); } else { System.out.println("You must pass an apppropriate region parameter"); } System.out.println(usHeatingDevice.voltage() + " V"); System.out.println(usHeatingDevice.frequency() + " Hz"); } } }
As you can see supporting new functionality is just as easy as adding the highlighted lines above.
The UML diagram below summarizes our example:
Adding flexibility to the Adapter Pattern
Thanks to Lariza Saenz a colleague from JavaHispano user group for pointing this out in the post comments. Let's suppose that you are not interested in implementing all the methods of the interface. You could do it as follows:
1. Implement the method in the HeaterAdapter class and throw an UnsupportedOperationException.
2. or create an abstract class AbstractHeaterAdapter.
Let's illustrate step #2. The AbstractHeaterAdapter class would look as follows:
package adapter; public abstract class AbstractHeaterAdapter implements USHeatingDevice { @Override public int voltage() { // TODO Auto-generated method stub return 0; } @Override public int frequency() { // TODO Auto-generated method stub return 0; } }
The implementation class would looks as follows:
package adapter; public class Starter2 { public static void main(String[] args) { USHeatingDevice usHeatingDevice = new AbstractHeaterAdapter(){ public int voltage() { return 125; } }; System.out.println(usHeatingDevice.voltage()); } }
A real world example of this technique can be found in the java.awt.event package. Every listener interface (e.g MouseListener) has its correspondent adapter (MouseAdapter). The MouseAdapter is an abstract class that implements the MouseListener interface. So when you want to attached a mouseClicked event to a button you an either do it through a MouseListener or a MouseAdapter. If you do it trhough the MouseListener you will have to implement all the methods defined in the interface (mouseClicked, mousePressed, mouseReleased, mouseEntered). But what happens if you are only interested in one of the methods? Then you would use a MouseAdaper and provide the implementation for the method(s) that you are interested only similar to the example in Starter2.java above.
Bonus: Improving the client
Bladimir Rondon another colleague from the JavaHispano users group has suggested to use a ResourceBundle and reflection to clean up the if/else ugly code in Starter.java . The main advantage of using a resource bundle is as follows:
- You will be able to add implementations and not have to do any client code changes (except for the first time when you add support for the NonUSHeatingDevice).
- You will only have to make entries in the implementation.properties file for each new implementation.
The implementation.properties file will look as follows:
The Starter.java will look as follows:
package adapter; import java.util.ResourceBundle; import adapter.vendor.NonUSHeatingDevice; public class Starter { public static void main(String[] args) { if (args.length > 0) { ResourceBundle resBun = ResourceBundle.getBundle("implementations"); USHeatingDevice heatingDevice = null; //If creation of a USHeatingDevice fails, then try to create a NonUSHeatingDevice try { heatingDevice = (USHeatingDevice) Class.forName(resBun.getString(args[0])).newInstance(); } catch (Exception e){ NonUSHeatingDevice foreignDevice = null; try { foreignDevice = (NonUSHeatingDevice) Class.forName(resBun.getString(args[0])).newInstance(); heatingDevice = new HeaterAdapter(foreignDevice); } catch (Exception z){ System.out.println("Check your properties file"); } } System.out.println(heatingDevice.voltage() + " V"); System.out.println(heatingDevice.frequency() + " Hz"); } else { System.out.println("You must pass an apppropriate region parameter"); } } }
Now you could put a Facade Pattern to hide all the ugly try/catch out the main class into an static method in another class to improve this further.
The adapter pattern can be used in the situations as follows:
- To match methods of a new interface that has similar behavior but different method names.
- To allow one and only one adapter to work with many different implementations of the Adaptee.
- To provide custom behavior for a desired method(s) of the interface without having to implement all methods of the contract.
It is also good for:
- Illustrating the power of Polimorphysm.
- Promoting the good OO technique of coding to interfaces.
Database Inheritance : Subtyping0
If you are familiar with any object oriented programming language, the term inheritance may not be new to you. In OO programming such as in Java or C++ you basically put all the common attributes and behavior in a parent class and then you provide specific attribute and behavior implementation in each subclass. This feature is also supported by all major DBMS; it is called subtyping.
Some examples of subtyping are as follows:
- A School can be broken down into: regular school, charter school, administrative school, etc…
- A person can be broken down into: man or woman.
- A customer can be broken down into: an internal customer or an external customer.
- A product can be broken down into several products, books, music, movies.
- A book can be of different types: Hard Cover, PDF format, kindle format etc…
Let's take a look at it in action:
Let's depict the diagram above:
Book Entity
- Is the Parent entity, aka Supertype
- The Supertype is at the one and only one side of the relationship.
- Has all the information that is common among all of its subtypes.
- It's PK is going to be the PK of the Subtype as well so that we can get to the details and/or generic information back and forth.
Paperback Book and Digital Book Entities
- Are the Child entities, aka Subtypes.
- The Subtypes are at the zero or one side of the relationship.
- They contain information specific to them only.
- Their PK is the Parent entity primary key so that you can easily get to the common information.
Alert: Some people put a char column in the parent entity to be able to determine the subtype of that record without having to look at the subtype. Be very careful with this approach because if a parent entity can be of both types the solution would not be consistent; if you do that make sure that the subtypes are mutually exclusive.
Self-Referencing relationships1
Also known as recursive relationships, these are unary type relationships. These type of relationships occur when an entity can reference itself.
Recursive relationships occur often in hierarchies, and also in objects that are part of a whole. Below are some scenarios that could be modeled using recursive relationships:
- A course at a school or university can have 1 or more prerequisites.
- Organizations have people hierarchies (CEO,VP, Director, Managers, Employees).
- A finished product can be made of many sub products or parts.
- Also biological hierarchies(Dad, mom, siblings, son, etc..)
Let's look at it in action, grab some Java mug, just an advice :) We are going to solve this with the four steps as follows:
- Get a visual of the hierarchy (Extremely important).
- Create the database model.
- Fill it with some data.
- Write some queries.
Step #1: Get a visual of the hierarchy
The University in Illinois has one of the most reputable computer science programs in the world, so I have decided to model a very tiny section of their curriculum to illustrate self-referencing relationships. The following mind map represents two master level computer science classes and its prerequisites:
Step #2: Create the database model
The database table that will support this solution looks as follows:
Alert: Notice how the relationship line is optional at each end, you must do this otherwise the recursion would go in an infinite loop.
Step #3: Fill it with some data
The following screen shot shows all the data in the COURSE table that I have manually entered.
Step #4: Write some queries
You can write the queries in two styles:
1. By doing a query for each level of the hierarchy and combining them together by doing union all.
2. By writing a more generic query and providing an in clause. This step is not recommended if you have many rows in the table as it will drive you more insane than the first step.
Style #1: Query by "union all":
We are going to do the first query technique to demonstrate what the data looks like for the master level course CS 414 (Refer to the course on the left in the mind map).
select c.id, c.course_code, c.course_name, c.course_category, c.next_course from course c inner join course d on c.next_course = d.id where c.id in (1) union all select c.id, c.course_code, c.course_name, c.course_category, c.next_course from course c inner join course d on c.next_course = d.id where c.id in (2) union all select c.id, c.course_code, c.course_name, c.course_category, c.next_course from course c inner join course d on c.next_course = d.id where c.id in (3) union all select c.id, c.course_code, c.course_name, c.course_category, c.next_course from course c inner join course d on c.next_course = d.id where c.id in (4)
The query above produces the resultset as follows:
Style #2: Query by "in" clause
Now we are going to write a shorter query that will demonstrate what the data looks like for the master level course CS 421 (Refer to the courses hanging to the right of CS 421 in the mind map).
To obtain the dependencies hanging to the left of CS 421 we could write the following query:
select c.id, c.course_code, c.course_name, c.course_category, c.next_course from course c inner join course d on c.next_course = d.id where c.id in (5,6,8,9)
This query will produce the resultset as follows:
To obtain the dependencies hanging to the right of CS 421 we could write the following query:
select c.id, c.course_code, c.course_name, c.course_category, c.next_course from course c inner join course d on c.next_course = d.id where c.id in (5,7,10,11,12,13)
This query will produce the resultset as follows:
Now that I have finished writing the post i realize that I could improve the queries by replacing the next_course column with a next_course_name column. If you want to do that comment out the c.next_course column from the select clause and replace it with d.course_name as next_course_name.
Best Practices
The best practice is to have a collection of views that give you all the data representation that you need to have for each hierarchy. That way you only have to pull your hair once and hope that no reorganization is going to happen (EVIL LAUGH HERE) . If it does, then you will have to go through a similar painful exercise again.
Conclusion: Recursive relationships can be very tedious and difficult to implement. Hence, the bullet points below:
- documentation to understand the recursion is very important.
- A Mind Map is the best way to document a recursive relationship.
- A business group should be responsible for owning that document and passing it along to IT staff. This document should be revised at least once a year (or more) to ensure the hierarchy has not changed.
Without the mind map I would have not had the right state of mind to solve this problem. The tool I use for mind mapping is called Novamind (it is not free though) but very good for learning, brainstorming, and other purposes.
Many-to-Many Relationships1
This topic deserves special attention because many people from database designers to application developers (sometimes one person does both) do not get it right. A Many-to-Many relationship occurs when each instance from the entity on the left can have many instances from the entity on the right, and vice versa.
Some examples of many-to-many relationships are as follows:
- Each order can contain many items. Each item can also belong to many orders as it can be purchased by different customers.
- Each student can be signed up for many coursers. Each course can be assigned to multiple students.
Incorrect implementation of many-to-many relationships
We see this problem when people are trying to use foreign keys to solve this problem. Let's illustrate it with the second example listed above as follows:
What we are trying to say here is that each student can take many courses and that each course can be taken by many students. So to implement this we have put a FK to the student table which will point to the course table.
Do you see any problems with this?
- Yes!!! we will have repeated student rows for each different course a student is taking.
- At the moment you do this your database would no longer be in 3NF because we would have repeated groups.
- This issue above can potentially yield to update anomalies.
- This relationship is said to be unresolved.
Correct implementation of many-to-many relationships
In order to correct the many-to-many implementation above we have to resolve relationship. This is done as follows:
- By adding another table between the two entities; this table is called associative entity or intersection table.
- By making the PK of the associative entity a composite key that consist of each of the parent's PK (We are using Identifying relationship).
- By naming the intersection table as follows (not required by DBMS, but suggested): ENTITYA_ENTITYB. In our case STUDENT_COURSE or STUDENT_COURSE_REL.
- By Changing the cardinality of the parent tables to be One-to-Many to the associative entity.
Let's see it in action:
What improvements do you see?
- The student is defined once so we avoid duplicate data.
- The courses are defined once and we avoid the same problem as if we would have put the FK in the course table in scenario #1.
- We do not run the risk of update anomalies.
- We can add meaningful fields in the associative entity. Those are called the Fixed Intersection data.
Alert: The FID will become your FACT tables and the parent entities would become your DIMENSION tables in OLAP database structures. Dimensional modeling is a different modeling technique which uses a lot of denormalization so that you can yield better query performance as data is only 1 join away at most.


text:
Posted on Friday, May 17, 2013
CHA has named seven new vice presidents:
Keith Cowan, CPG is CHA's Environmental Market Segment Director. He has 16 years' experience in environmental compliance, remedial investigation, design, brownfields and hazardous waste.
Michael Hurtt, PE is a Senior Technical and QA/QC Manager in our Transportation market. He has 29 years' experience designing and overseeing the construction of highways and bridge projects.
Johnathan Hickok, PE is a Senior Project Manager. His 16 years' experience includes overseeing the design of some of CHA's flagship highway and sports facility projects.
John Cimino is CHA's Vice President of Project Development in New Jersey. His 16 years' experience includes business development and client management roles for several engineering firms.
Elizabeth Snow, CPA is CHA's Corporate Controller. She has 12 years' experience in corporate accounting.
Dan Higgins is CHA's Director of Government Affairs, Eastern Region. He has 17 years' experience in business development and government relations in the construction industry.
Walter Huntley is CHA's Director of Strategic Client Development. A senior vice president, he has 42 years' experience in economic and community development.
"Each of these individuals has demonstrated the management, technical and leadership skills necessary to help us achieve our strategic growth goals," said Raymond L. Rudolph Jr, PE, CHA's Chief Executive Officer. "I'm proud to congratulate them as they advance through the management structure of our firm."
Scott Keating, Associate
Communications Manager
Phone: (518) 453-4516
Email: firstname.lastname@example.com


text:
AB InBev Sales Grow, Sees US ImprovementAugust 1, 2014 8:24 am | by Associated Press
AB InBev, known for its Budweiser brand, says its sales and earnings grew in the second quarter, with 7.2 percent growth in Brazil alone. The world's largest beer maker also says it sees an improving economic outlook in the United States.
Infographic: Breakfast by the NumbersAugust 1, 2014 8:20 am | by Hartman Group
In the 20th century, cereal helped redefine breakfast as a health moment. Breakfast beverages also arose to give us a heavy dose of nutrition to start our day. But what is the industry seeing today? Research by Hartman-Group shows what we eat depends on when we eat.
Pepsi Plans to Increase Recycling, Protect Drinking WaterAugust 1, 2014 8:20 am | by PepsiCo
PepsiCo is now addressing both curbside and on-the-go-recycling as part of its goal to help grow the U.S. beverage container recycling rate to 50 percent by 2018. The company is teaming with The Nature Conservancy to teach consumers better ways to recycle.
Judge Orders Kellogg to End Memphis-Plant LockoutAugust 1, 2014 8:00 am | by BCTGM International Union
A federal judge has granted an injunction that orders the Kellogg Company to end its lockout of 226 workers at its Memphis cereal plant and reinstate them to their jobs within the next five days. The judge states that imposing a lock over non-mandatory terms is unlawful.
Botulism Fears Lead Calif. VR Green Farms to Recall ProductsAugust 1, 2014 8:00 am | by Associated Press
VR Green Farms, a San Clemente-based food packaging company, is recalling several of its food products over fears of possible botulism contamination. Botulism toxins are odorless and tasteless, but can lead to serious illness and death.
Indiana Popcorn Fest Loses Orville Redenbacher SponsorshipJuly 31, 2014 12:04 pm | by The Times ,Munster, Indiana
Valparaiso's 36th Popcorn Festival has lost the title sponsorship of Orville Redenbacher. Valparaiso, the Indiana city where Redenbacher developed the hybrid popping corn that made him famous, said ConAgra is still open to sponsoring other things at the festival.
Oakland Zoo Animals Dine on Fruit After Food Truck CrashJuly 31, 2014 12:00 pm | by Associated Press
Animals need fresh food, too. How about 13,000 pounds of fruit? Bears, giraffes and elephants were among some of the animals at the Oakland Zoo that were treated to a buffet of tropical fruit, including plantains and jackfruit, after a truck spilled its shipment.
Whole Foods Plans Major Marketing Push to Fend Off CompetitorsJuly 31, 2014 12:00 pm | by CANDICE CHOI, AP Food Industry Writer
Whole Foods' slowing sales growth has pushed the Austin, Texas-based company to launch a national marketing campaign to fend off other players in the organic and natural foods category. In addition, the company plans to expand its home deliveries.
Kraft Foods 2Q Profits Fall 42 PercentJuly 31, 2014 11:30 am | by Associated Press
Kraft Foods, popular for its Velveeta and Oreo brands, reported a 42 percent decline in its second quarter net income. The Northfield, Illinois-based company said its earnings fell to $482 million compared to $829 million in the same quarter last year.
GOP Blocks Tax Hike on Firms Moving OverseasJuly 31, 2014 11:30 am | by Stephen Ohlemacher, Associated Press
Republican senators blocked a bill to limit tax breaks for American companies that wish to move their operations overseas. The bill would have cost U.S. companies that move overseas $143 million in additional taxes over the next decade.
Winemakers Want NY to Deny Gas Storage PermitsJuly 31, 2014 8:45 am | by MARY ESCH, Associated Press
Finger Lakes winemakers are asking Governor Andrew Cuomo to deny permits for natural gas and propane storage facilities in former salt mines along Seneca Lake. Dozens of wineries in the area are opposed to the gas facility because it threatens local business and economy.
Cargill to Close Milwaukee Beef Plant Due to Cattle ShortageJuly 31, 2014 8:30 am | by Associated Press
Cargill is planning to close its Milwaukee beef-processing plant, putting more than 600 people out of work. The meat producer says the drought of 2011 and 2012 in the Midwest hurt cattle levels, and the shortage is at its lowest level since 1951.
Too Sweet to Eat? Technology Reduces Sugar Needs in ChocolateJuly 31, 2014 8:20 am | by MycoTechnology, Inc.
By nature, cacao beans are not sweet and require a significant amount of added sugar to mask the bitterness. MycoTechnology can make better tasting foods using all-natural and non-GMO processes, reducing sugar requirements in chocolate by up to 70 percent.
Photo: Celebrate National Ice Cream Month With 3 New FlavorsJuly 31, 2014 8:15 am | by California Milk Advisory Board
July is National Ice Cream Month. In celebration of California's continuing role as the number one producer of ice cream in the U.S., the California Milk Advisory Board has partnered with Coolhaus to create three new signature ice cream sandwich treats.
Experts Work to Create At-Home Caffeine Detection Test for DrinksJuly 31, 2014 8:10 am | by American Chemical Society
The news of an Ohio teen who died of a caffeine overdose has the FDA thoroughly inspecting all foods and beverages with added amounts of caffeine. Now, scientists are working to create an at-home test that detects the stimulant in almost all beverages.
Crystal Sugar CEO Contests Subpoena in Sweetener LawsuitJuly 31, 2014 8:00 am | by DAVE KOLPACK, Associated Press
American Crystal Sugar CEO David Berg is contesting a subpoena to testify in the federal suit filed in California in 2011 by sugar producers. Lawyers for the corn syrup industry say Berg would be a good witness in the lawsuit because he is not involved in litigation.
Consumer Trends: Cinnamon Horchata Ale? Blue Moon Thinks SoJuly 30, 2014 2:34 pm | by Blue Moon Brewing Company
Blue Moon Brewing Company's Head Brewmaster Keith Villa's latest creation delivers a cinnamon flavor and subtle sweetness. Inspired by the popular Latin American drink, Horchata, this beer is infused with cinnamon, dark candy sugar and long-grain rice.
Jurors Told Peanut Salmonella Trial Will Exceed 2 MonthsJuly 30, 2014 2:23 pm | by RUSS BYNUM, Associated Press
Jurors of the trial involving Peanut Corporation of America's deadly salmonella outbreak were told it may take at least two months. The Georgia-based plant was charged with shipping tainted peanuts and covering up lab results showing nuts tested positive for salmonella.
VIDEO: Maple Leaf Foods Sets World Record With Bacon DanceJuly 30, 2014 2:09 pm | by Maple Leaf Foods Inc.
Maple Leaf Foods has set two world records: the longest BLT sandwich, registering at more than 227 feet long using 2,000 slices of Maple Leaf bacon, and the largest bacon dance. Watch 161 Maple Leaf employees sizzle to the new bacon dance craze in this video.
Organic Study: One Step Forward in Fight Against Deadly Citrus DiseaseJuly 30, 2014 12:30 pm | by The Organic Center
With concerns rising about the heavy spraying of unhealthy chemicals being used to ward off the deadly citrus disease, or Huanglongbing, the Organic Center has launched a multi-year study to find safe methods to prevent the disease from spreading.


text:
These are Kim Lefko's beautiful daughters Bear and Love Bug. Bear was celebrating her 3rd Birthday with a princess themed bash. I think Love Bug is smart for a 6 month old- she's giving her big sister a birthday kiss, but I think her hidden motive is to get her hands on that beautiful Cinderella [...]
Graco ContributorsGraco contributors...
Wondrous Wednesday #59
by Graco Contributors on February 11, 2009 in Wondrous Wednesday
Favorite [hidden] features of the Graco Sweetpeace
by Graco Contributors on February 10, 2009 in Babies, Office Talk, Parenting, Products
It's funny that it turns out that a lot of people's favorite features of the Graco sweetpeace Newborn Soothing Center are the ones they didn't even realize were there! We thought we'd take a minute to point these favorite [hidden] features out to you: 1. The MP3 player is the one that gets people excited- [...]
25 Random Things About Parenting
by Graco Contributors on February 9, 2009 in Babies, Parenting
For those of you active on Facebook, you've probably seen the "25 Random Things about Me" going around recently. Well I'm a little too lazy to come up with 25 but as it turns out, Jim Deitzel from Rubbermaid (sister company) has a little more time on his hands. I teased him about that [...]
It's GOT to be the Shoes
by Graco Contributors on February 5, 2009 in Parenting
It started with shoes. Now, I'm just talking about soft-soled crib shoes, but shoes nonetheless. Now, I am not a "girly-girl" but I do love a nice pair of shoes, and was so impressed and excited that little Lovey had a definite opinion about what shoes she wanted to wear. Probably started around 12 months [...]
Wondrous Wednesay #58
by Graco Contributors on February 4, 2009 in Wondrous Wednesday
This is my future little nephew "JJ." He has become quite a natural at posing for pictures – he really knows how to turn it on for the camera! JJ is going to make a great ring bearer in my wedding this March! Every Wednesday we'll be sharing a photo showing off a little bit [...]
Teaching our Children about Winning & Losing
by Graco Contributors on February 3, 2009 in Babies, Parenting
Okay…I'm going to get into a lot of trouble with this post. I grew up as the youngest of four, including two older brothers. Winning & Losing was something we did, DAILY! And the whole idea about "it's okay to lose" was not common language in our household. Actually it was quite the contrary. Recently, [...]
Graco's Monthly Nods – January
by Graco Contributors on February 2, 2009 in Monthly Nod
We've been doing our Monthly Nods for almost a year now but I thought I'd remind everyone (or tell the new folks) what this program is all about… A large part of joining in the conversation in the online parenting community, is reading all of the great conversation that is going on in the blogosphere. [...]
Conquering the Potty (finally!!)
by Graco Contributors on January 29, 2009 in Parenting
The statement I heard from a lot of moms, "one day your child will wake up & decide that she wants to pee on the potty" always made me nervous. Well PP, who will be turning 3 in 3 months, had yet to express any interest in going peepee on the potty. So, I decided [...]
Wondrous Wednesday #57
by Graco Contributors on January 28, 2009 in Parenting
It was a snow day here in Exton, PA and while the 2 inches didn't keep most people out of the office, it did keep kids home from school. Here's a picture of Jagger and B enjoying the snow (and enjoying having their dad drag them all over the place!) Even though dad was sweating [...]
Tracking Your Baby's First Year – Cutest Baby Calendar Ever!
by Graco Contributors on January 27, 2009 in Parenting
If it's true that a picture is worth a thousand words, we believe that having a baby requires thousands of pictures which go beyond words. As a parent myself, I'm always looking for cute new ideas to document memories, keepsakes, monumental events and more. Well, I have discovered the CUTEST idea for a baby's first [...]
Graco Celebrates 25th Anniversary of the Pack 'n Play®, the Playard of Choice for more than 30 Million Parents
December 3, 2012
Win It Wednesday: Nautilus Plus 3-in-1
January 9, 2013
Introducing Graco® Head Wise™ 70 Convertible Car Seat for Win It Wednesday
March 13, 2013
Boost Up for Back to School
August 19, 2014
Graco Recalls the Harness Buckles on Select Infant Car Seats: What You Need to Know
July 1, 2014
2014 Baby Bucket List
June 1, 2014
- Download vlc: I don\'t even know how I ended up right here, but ...
- Meir Ezra genius: Do you offer you protection or warranty of your sp...
- aide pour trouver un emploi: Hi all, here every one is sharing these kinds of k...
More Topics
- Customer Service (11)
- Features (432)
- Blogger Spotlight (7)
- Blossom (2)
- Bundles & Bumps (51)
- Celebrate (60)
- Celebrity (18)
- Connecting (26)
- Contests (8)
- Crafty Kids (1)
- Events (2)
- Fashion (14)
- Graco Get One Give One (22)
- Graco Get-Togethers (12)
- Guest Posts (5)
- Inspiring Stories (4)
- Monthly Nod (27)
- Office Talk (113)
- Promotions (2)
- Wondrous Wednesday (107)
- Parenting (774)
- Babies (195)
- Children (39)
- Grandparenting (21)
- Milestone (12)
- Relationships (33)
- Sibling (8)
- Twins (1)
- When a Toddler Turns Teen (18)
- Pregnancy (82)
- My First Baby (16)
- Nesting (2)
- Product (18)
- Products (154)
- Car Seat (40)
- Smart Seat (3)
- SnugRide 32 (3)
- SnugRide Click Connect 40 (2)
- DuoDiner (5)
- FlipIt (6)
- Highchair (13)
- monitor (6)
- Nautilus (9)
- Pack N Play (9)
- Playard (10)
- Quattro Tour (1)
- Signature Series (1)
- Stroller (17)
- Sweet Slumber (1)
- Sweetpeace (2)
- Swings (5)
- Bumper Jumper (1)
- turbobooster (5)
- Car Seat (40)
- Safety (37)
- Strolling (3)
- Travel (4)
- Videos (3)
Follow @gracobaby on Twitter


text:
MCL 201: Communication Leadership Strategies (3 credits) The distinction between management and leadership; the role of leaders in society, particularly in communication; communication leadership models.
MCL 202: Communications and Social Responsibility (3 credits) The ethics and policy of information management, including the legal and philosophic aspects of the Information Age.
MCL 203: Applied Communication Theory and Research (3 credits) What research tells us about how to communicate effectively to employees, employers, and publics outside of the organization; how to use research to gain insight into the organization; practical data analysis.
MCL 204: Innovation and Change in Contemporary Communication (3 credits) Innovation as a tool for thoughtful change; communications problem-solving; how the successful leader takes advantage of opportunities to move the organization and its message ahead.
MCL 205: Financial Fundamentals for Communication Leaders (1.5 credits) How a communications leader prepares, implements, and maintains a budget; understanding cost controls and income generation; modifying financial needs based on economic change.
MCL 206: Emerging Media Strategies (1.5 credits) Leading online and digital staffs into a future of unknown technology and change.
MCL 207: Communication Leadership Capstone (3 credits) Application of all course material to a communications problem.
MBA 240: Sustainable Decision-Making How values and ethics play a role in the decision-making process and their impact on the multiple roles played by organizations.
Students can choose between MBA 254 and PADM 221. NOTE: Students can also take both courses, as part of their electives in CBPA.
MBA 254: Leadership and Human Capital Development Applied human resources management designed to improve leadership skills and the development of an organization's workforce. Ethics and the successful long-term operation of organizations in today's pluralistic and diverse society.
PADM 221: Organizational Process & Administrative Systems The management of individuals and groups in the ethical pursuit of organizational effectiveness, with an emphasis on theories and contemporary issues surrounding behavior of organizational members as individuals and as members of work teams.
MCL 299: Special Topics (1.5 credits each): A mix of courses offered on a revolving schedule, on topics such as Women and Leadership; Write Like a Leader; Crisis Communication; Organizational Management; The Mentor Gap; Reinvention Strategies; Employee Communications; Leading Diverse Populations; Creativity Seminar; Small Group Dynamics; Preparing Written Reports and Oral Presentations.
BUS 212 Executive Leadership; BUS 298 Creativity in Business; MBA 242 Evaluating Organizational Performance; MBA 251 Creating Customer Value; MPA 215 Changing Environment and Management of Public and Nonprofit Organizations; MKTG 291 Services Marketing; MKTG 275 Sales Management; MGMT 286 Project Management; PADM 282 Comparative Management in a Global Environment
Fall Semester (6 CREDITS)
CBPA 3-credit course
Spring Semester (6 CREDITS)
CBPA 3-credit course
Summer semester (6 credits)
CBPA 3-credit course
JMC 1.5 credit course
JMC 1.5 credit course
Fall Semester (6 CREDITS)
CBPA 3-credit course
Spring Semester (6 CREDITS)
JMC 1.5 credit course
JMC 1.5 credit course
Summer Semester (6 credits)
JMC 207 (3 credits)
Elective (3 credits)
Copyright © 2014 - Drake University - All rights reserved.