1/31/2013

Dabbling in C#

Today I wrote some c# code - an ASPX project.

I inherited the half baked app and was asked to complete it.

It's basically a 1 page ASPX app with 4 or 5 classes.

It's got about 5 stored procedures.

I added a new page and a new Sproc today.

It reads in the SalesForce Regions and Territory's and looks to see if any are missing from the Quota table.

If so, it creates a list on the web page.

Next step will be to write some code for user to click and enter generate 24 entries into the database.

User can go back to first page to assign quota's to regions / territory's one per month / year for both New and Renewal business.

The problem now is that SalesForce must be synched with the table, if not, report is wrong and I get tickets from the Europe Sales people.

I've been massaging this report for 8 months now.  It used to run in 7 hours, got it down to 16 minutes, then to 4.  It now runs in less than minute.  By using temp tables and table variables and indexes on temp tables.

So we are getting closer to having an accurate report.

This has been a tough exerciser because there's so many points of failure:

incorrect data entry, timing, SalesForce and Quota table not matching (spelling counts), new Regions / Territory's, changing personnel.

This report could cause me to drink.

Because every week i can be sure to get a ticket saying the report is incorrect.

And every week I send an email saying the report logic hasn't changed in over a year, it's the data causing the issue.

And today I found out the last report guy quit because of this exact report.

Nice.

1/30/2013

Choose Wisely!

With technology changing so fast, choosing the right path for your org is like betting on horses.

Should you invest in a specific technology, vendor or product because it's the hottest thing at the moment?

Take any space in IT, will it be around in 6 months, 6 years?

Because IT is like throwing a bunch of stuff at a wall to see which ones stick.

And you could pick a direction and it turns out to be detrimental.

Just imagine if you did all your development in J# years ago.  Yikes.

How about Java Applets?  Or SilverLight?  Or ColdFusion?

The risk is high.

Which means one of two things:

Pick a bleeding edge company/technology (high risk/high reward).
Or
Pick a conservative approach with a fleshed out company/technology (less risk/lesser reward).

I'd say this decision is critical and pertains to every org doing business today.

Choose wisely!

Becoming A Mentor

We've got a junior level web developer.

Who's been tasked with getting a web site up in running.

In Visual Studio .net.

And I heard that he's been struggling.

So I offered to assist.

So I went upstairs and asked what he was doing.

Turns out he was trying to connect to SQL-Server via .net.

And I reviewed his code.

And added sufficient privileges to SQL-Server user id.

So now he could see the database from VS.

I modified his connection string.

Ran the web, sure enough he was connected.

So I asked IT if they could load SQL-Server locally so he wouldn't have to log into VM to access the DB.

And my boss asked me to mentor the guy

So I agreed.

Funny thing, he calls me "Sir".

And so it goes!

My Intro to Linux

I grew up on Dos and Basic in 1982.

So command line is no stranger to me.

I remember when Windows first appears, rather it was OS2 when my father informed me on a new 'window' like feature to have multiple windows open within a single screen.

So working on the Windows platform for the majority of my career, with the exception of 1999-2001 we developed on Windows and deployed to Unix (Actuate Server).

So this past week I got thrown into the Linux side of the world.

And the command line is your friend.

Except it took me forever to search Google for basic command line functions.

After a few days, I was humming through the directory structure setting permission on files, copying folders, installing licenses and such.

And my cube mate brought in his Linux in a Nutshell book for me to reference - he probably got tired of me asking questions.

So after a weeks time I enjoy the world of Linux and all it has to offer.

Just imagine, learning a technology 20+ years ago and still being able to use your knowledge without much change.

Seems like an anomaly in the ever changing world of technology.

And so it goes!

1/29/2013

Predictions

What is going to happen tomorrow?

Well, we sort of know the answer.

For most of us, we'll do our normal work routine.

So in a sense you can predict the future based on past experience.

Except you can't predict everything.

Some things will happen unexpectantly.

And those things can't be predicted.

How about 5 years from now, any guesses?

We may guess correctly.  Maybe not.

Even if we had all the data, who knows if we could predict tomorrows events based on past data.

What you can do is look for patterns over time.

And based on those patterns, you can predict the probabilities of certain events in the future.

It's not fortune telling.  It's quite a science.  With statistical calculations.  Which can be tested and repeated over time.

Bottom line, if we could accurately predict the future repeatedly, that would be revolutionary.

To be honest I don't think we can predict the past.  If anyone can tell me what happened 10,000 years ago or older in the history of humanity, that too would be revolutionary.

We don't know where we came from, we don't know where we're going, and many of us don't know what's happening at this moment.

So What Am I Working On?

So now that I've gotten Pentaho Data Integration working, I've been told to work on it in the background.

As it's not my top priority.  So I shall soon find out what is my top priority.  Today I got a taste of it, I inherited a c# ASP application which needs some modification.  And I will also support a SQL based application with Stored Procedures and Views and emailed templates and such.  And of course the SSRS reports as well as the advanced BI stuff in Tabular Model and Power Pivot.

The position's got everything I'm interested in minus the Cloud.  Working for a software development company, they've got lots of smart people there.  We have a good time and get the work done.

I have a feeling things are going to pick up work wise.  Makes the day go by quicker.  Working for a new department with all new people, for basically a new division being spun off.

I still say its the best job I've ever had.

AI and Robotics

From where I sit, we are immersed in new technology at a staggering pace.

So what should we learn?

I stick with my core skills in order to earn a descent living:

1. Data 

  • Reporting
  • Business Intelligence
  • Big Data
  • Databases

2. Programming

  • Microsoft c#
  • ASP.net
  • Web Services
  • jQuery

3. The Cloud (nice to have)

However, what should I be learning?

  • Artificial Intelligence (AI)
  • Robotics
There may come a time in the not so distant future, where we have two groups: the humans and the machines.

The humans could become deprecated as many jobs are automated.  Denying this trend is a form of ignorance.

For computers, increased memory, larger hard drives, complex reasoning based on massive amounts of data, computers could develop brains based on logic at first.  Then move into "ability to learn and recognize patterns" as in IBM Watson.  Finally perhaps the "ability to perceive and display emotions".

Cutting edge stuff, you bet!  Possibility, sure, why not.  Reality, maybe sooner than later.

http://www.bloomconsultingbi.com/2012/05/artificial-intelligence-is-future.html

Follow Up Post

So yesterday I posted a blog entry where I got Pentaho working for Data Integration.

http://www.bloomconsultingbi.com/2013/01/solved-it.html

By upgrading to the latest version 4.4.

However, that was only partially correct statement.

I COULD connect from a CentosVM to the Cloudera Hadoop Cluster VM, that is true.

I could see the file structure, delete folders, etc.

However, I COULD NOT execute a Data Integration Spoon job for some reason.

So today, it was discovered that the /etc/host files need to be updated on both destination and calling VMs.

I had to translate the calling server to map it's IP address with a host name.

I had to modify the hosts.allow file to allow certain IPs.

And I had to modify the Hadoop Cluster VM to accept incoming calls from the calling IP address.

And presto, we got files in the output directory of the wordcount folder on the HDFS cluster:



1/28/2013

Solved It!

Well, I have to say this was a tough one.

And it turns out that I needed to download the most recent version of the software.

Because I originally downloaded the Cloudera cdh4 image, got that working.

Then downloaded Pentaho BI server and got that working.

Then downloaded Pentaho Data Integration server and was not able to connect to Hadoop.

So on today's conference call I mentioned the file I downloaded was the 4.3 and the Pentaho sales person said I should download the 4.4 because that has all the settings pre-configured.

So by doing it the hard way I essentially learned the guts of the infrastructure, similar to removing a car's engine and re-assembling it just to see how it works.

So tonight aroun 8:45 after working on this all afternoon, the thing connected to the Hadoop server.

So tomorrow I'll try and kick off a Hadoop Map Reduce job.

Success!  The hard way.

http://www.bloomconsultingbi.com/2013/01/download-correct-version-of-software.html

Download Correct Version of Software

So today I had conversation with the folks at Pentaho.

The conference call was to help me install the Pentaho Data Integration eval software.

I basically downloaded the incorrect version the other day, so I actually need to install the 4.4 version.

Which should download the necessary software components I need to connect to Hadoop.

However, the call went well and the product allows a graphical user friendly canvas to create connections to and from Hadoop without having to write much, if any, straight java code.

It looks promising.  So I'll be downloading the software ASAP.

And that's the story!

Right Data, Wrong Analysis

After reading this article, it validates what I've been saying.

You can have the right data, at the same time, you can have the wrong analysis.

Because people have inherent biases.

They may have personal business experience which can skew the results.

They may lack certain analysis skills which produce faulty results.

I say let the machine's analyse the data and produce the results.

Leaving the analysis up to error prone humans can be risky.

And so it goes!

Carpet Baggers and Snake Oil Salesmen

Not sure if anyone has a clue when it comes to the state of Florida.

Sure they rigged the election so Georgie could win.

And we get tons of hurricanes.

And we have oil spills occasionally.

And the streets are flooded with people from Ontario and Indiana and Ohio and Michigan and what have you from November through March.

But the truth is inflation has really taken its toll.

The number of high paying jobs is limited and has fierce competition.

The number of low paying jobs has diminished because bottom fell out of the housing market and nobody's building houses anymore.

The traffic system is abdominal with very poor public transportation.

The education system is lacking.

State college used to be inexpensive, no more.

It seems every carpet bagger and snake oil salesman moves to Florida to swindle the elderly and what have you.

Nothing personal but can we get some high paying jobs, some public transportation, fix the traffic situation.  The lack of education system doesn't bother me at this point, except it probably deters people from moving here.

The problem I think is that everyone here is from somewhere's else.  Most of the locals from long ago have been driven out and moved elsewhere.  So nobody is willing to take responsibility to fix the problems.

So I guess the solution is to sit back and wait for the next bubble whatever it may be to come along and swindle the next batch of suckers.

Until then, it's business or lack of as usual.

1/27/2013

Home Ownership is the American Dream?

I've been trying to reach the landlord all day.

To have them come out and fix a few things.

Then my wife tells me we own the home, not renting.

Well, that's great.  Who's going to fix all these things.

We are.

Not only that we get to pay back the loan with interest.

In fact, I got out the loan docs, we'll end up paying as much money in interest as the true cost of the house.

Not only that, we have to insur the thing too with mortgage and flood insurance and we had to pay PMI in case we default on the loan, the bank in protected.

So this past year, we had to replace the air conditioner, the water heater, the microwave, the garbage disposal, the dishwasher, put fans in all the rooms, fix the plumbing leaks plus damaged wallboard, snake the vents, add insulation to the attic, garage door opener, fix the panels on side of the house.

And after all that's said and done we also have to clean it, hire pest control, a pool cleaning person.

And our home has lost $100k since it's peak in 2007, just before we bought it.

Who says that home ownership is the American Dream.

I'd like to have a few words with this individual.

He's got some splanin' to do!

Internal Business Customers Have the Dream Job

It's great to be the customer.

You get to request things, anything you want, as long as its IT related and you submit a ticket.

Want a new application to perform amazing feats, just submit a ticket.

Don't worry about providing working specks.  Just assign a short deadline to get things moving.

And once the IT team produces something, just change the entire design.

You should see the faces of the IT people when this happens, priceless!

Also, forget to mention key things, like dependencies, functionality.

Throw those in after all the work has been completed and let the developers know you mentioned this weeks ago, they must have forgotten to take notes.

Yeah, it's great to be an internal business customer to the IT department.

You don't have to think through anything, you can request whatever you want, make up impossible deadlines, and most of all, you get to decide if the application meets your demands.

In fact, you can have the IT department do all your work.  And on top of that, in your own meetings, you can throw the IT department under the bus in case you are under the gun for something.

Just blame the IT department, "you know how the IT department works, they can't do anything right (wink, wink!)."

Ain't life sweet!

Hiring Company's Must Conform to Reality

Seeking, qualified candidate only.

Must be versed in every technology posed to mankind: hardware, software, networking, social media, assembly language, punch cards, reel to reel tapes, all databases, all web technologies.

Must be willing to work 24 hours per day 7 days a week.

Must meet or exceed impossible deadlines.

Must be a team player as well as work independently.

Must be able to decipher customers gibberish and changing specifications every hour.

Must accept minimum wage salary and be thankful.

Only qualified candidates may apply.

Hiring company's who only hire superstars at sub-standard wages will get what they ask for.  Disgruntled people who'll quit at the first opportunity or when the market turns.

Bosses Are People Too

You're boss is in charge of making sure the job gets done.

And you are his or her resource.

And you should do what they say in the time alotted.

You shouldn't lie to your boss.  Or speak bad about them in a meeting.  You shouldn't go over your boss' head.  And you shouldn't say you're working from home then go to the dog tracks to drink beer and gamble (just sayin!).

Your boss probably has a spouse and kids and probably complains about you and the coworkers just like you do, just not publicly.

And guess what, you're boss may think you're a real nincompoop, couldn't figure out how to tie your shoes without close supervision.

Your boss is a real human being with the same life challenges as you and me.

And he's getting pressure from the customers, his management structure as well as having to deal with you.

So lighten up.  Cut the boss some slack.  Why not compliment them once in a while.

And there you have it!

Speak from Experience

Every book I've ever read on accumulation wealth or reducing debt, the author has filed bankruptcy at least once.

Why is that?

I'm supposed to take advice from people who can't be trusted with their own finances.

Same with diet books.  Learn from people who's wait fluctuates more than the weather.

I'm mystified by the fact that everyone follows them blindly like sheep.

Why not have a rich person write a book about how they did it and not some cookie cutter formula that is too complex for the average person.

How about this: Don't spend more than you earn.  Pay cash, if you don't have the cash, don't buy it.  Save for a rainy day.  Don't time the market.  Don't invest money you can't afford to lose.

How about this: Eat when hungry, but no more.  Eat a variety of foods.  Drink plenty of water.  Don't eat processed foods, only natural.  Steak, chicken, pork and fish are good as long as you don't over do it.  Don't eat from the 5th food group: Pizza, doritoes, pop tarts, etc.  It's okay to snack occasionally as we all crave sweets.

Now, send me a check for the above two paragraphs and we'll call it even.

False Advertising

The people at the health food store are sales people, who pretend to be doctor's.

And at the medical offices, you have doctor's who are secretly sales people.

Funny.

But true.

Grand Illusion

Why are there two of everything?

Walmart vs Target
CVS vs Walgreens
Pepsi vs Coke
McDonalds vs Burger King

You name it.  Wherever you find one great product you find its competitor.

And why is that.

It's called the 'grand illusion'.

To make you think you have a choice.

That's we actually have competition.

But in reality, they are all owned by the same people, if you follow the rabbit hole to the stock holders.

And the reason is to hide the fact that we have monopoly's in this here country and around the world.

So just remember that once you see the truth behind the curtain, it's no long a grand illusion.

8 Things to Enjoy


  1. A gentle breeze.
  2. A peanut butter and strawberry jam sandwich extra jam.
  3. A walk with the dogs.
  4. A few hours with nothing to do.
  5. A new job offer.
  6. Learning a new skill.
  7. Completing a project.
  8. Getting a good deal on a new purchase.


Two Different Convesations

Have you ever ran into a road block.

You decide that you need assistance.

So you find somebody that you think can solve your issue.

And you spend the time explaining what the problem is.

And the person responds with a series of questions.

And this is what's really happening.

There's really two separate conversations going on.

A mismatch of communication.

The other person is not listening to your issue.

They are sizing you up to determine how much money they can make off you.

The issue you have is only the springboard to great profit.

This applies to IT, to plumbers, to the Medical profession, you name it.

People are in business to make money, and if they happen to solve your problem along the way, so be it.

Bottom line, do it yourself or find a trusted adviser to assist.

Otherwise, plan on parting with your hard earned money.

And you may or may not get your problem solved.

Fire Your Boss

So you can't stand your job, your boss, your co-workers, your salary, you commute, etc.

You've been doing the same occupation for 20+ years.

So I say go into business for yourself.

Fire your boss!

What you do is establish your own sole proprietorship or corporation.

You get business cards made up.

You get a website going.

You join the Chamber of Commerce.

And you solicit your skills to the small to medium size market.

And you generate clients, for whatever it is you do.

And you become self employed.

Soon you pick up more clients, too many in fact to handle yourself.

So you bring in people to assist.

You get the contract, you find the people to do the work, you become a middleman/woman.

For taking the risk, you get the profit.

And there you have it!

Find the Root Cause

In today's society, when confronted with an issue we try to solve the problem in the wrong way.

We treat the symptoms and not the actual problem.

For example, if a faucet is running, instead of find the root cause, which would be to turn the valve to shut it, instead we treat the symptoms, excessive water.

That's one of the biggest problems I see today.

And many so called experts are treating the symptoms instead of the problem.

And earning lots of money in doing so.

But I'd go a step further and say that no only do they attempt to solve the symptoms instead of the problem, they in fact make the situation worse off than if they did nothing.

You can apply this rationale to programming, IT, to the medical industry, veterinarian and dental, plumbers, you name it.

Treat the symptoms, not the problem, charge ridiculous prices and make the problem worse in the end.

Solution, find the root cause and don't take the lazy way out.

1/25/2013

Planes, Trains and Big Data

If you've ever seen the movie with John Candy called Planes, Trains and Automobiles, then maybe you can relate.

You see, I've been producing my own comedy of errors this week.

I've been attempting to get Pentaho working by connecting to a Hadoop cluster on Cloudera.

I ran into every possible road block that you can imagine.

I was able to connect to hadoop via the command line:

hadoop fs -ls hdfs://localhost:8020/

As well as the web page.

However, I could not connect via the Pentaho Spoon application on Linux.

So I customized several settings after researching all the articles on Google with people claiming to know the solution.

Well, as luck would have it, after applying one change bug fix, 3 more bugs cropped up.

Think spiraling downward into the infinity of the abyss.

Well, maybe not that dramatic.

What I did do was to learn many aspects of Linux Hadoop settings as well as Pentaho ecosystems.

I'm fairly intimate with these new products, we are on a first name basis.

And I never did Linux prior to this week minus a few ls commands.

So the Linux guy responsible for Big Data initiated a conference call with one of the sales/technical people.

Very nice guy and very smart, however, it's still broken

And I put in 5 additional hours since the conference call.

I basically started over, a clean slate, by installing a new VM with Cloudera, downloading the Spoon application.

No luck, different errors now.

Son now I've tried just about every combination there is to try.

I had to modify xml config files through VI, edit properties files, move jar files, download and install jar files, try "localhost" "localhost.localdomain" "127.0.0.1" "192.168.186.129".

I've read hundreds of potential bug fixes on Google.

I've probably tried 1000 different combinations in the past few days.

And you now what, I'm a heck of a lot smarter now that before I started.

Sure the project isn't working 100% yet, but I did get about 75% there.

And maybe the problem is some undocumented fix or typo or something trivial.

I'll try again next week.

Regardless, I feel good about this weeks accomplishments.

Although I may watch the movie Planes, Trains and Automobiles this weekend just to relive my work week.

However, I do see Big Data on the horizon and all the research I'm doing now should pay dividends down the road!

1/24/2013

Part Time Job Comes to a Close

My part time job has come to a close.

Worked there 2.5 years with a slight break summer of 2012 for a month or two.

I learned a lot.  Dedicated a lot of time and effort.

However, I asked for less hours in October which turned into no hours.

The management there was great, they always supported me.

As they went through constant change and turnover.

I had 4 managers and the coworkers changed quite often as well.

I've enjoyed my free time since the contract ended.

However, I'm always looking for additional work if it should arise.

As we travel this journey called life, we experiment and learn from everything we do.

In the end, we are thankful for the learning opportunity.

And so it goes!

Summary of Hadoop (1st week)

Working with Hadoop the past week, really getting some good exposure to Linux.

First time for me basically so every step, which should take 10 seconds, takes me 10 minutes or even hours.

Researching commands on Google.

However I'm getting the hang of some of it and can really fly through the directories.

Reminds me of the good old days in DOS in the early 1980's.

So to summarize, I got Hadoop cluster up and running on the Cloudera VM.

Got a sample WordCount class turned into a Jar file and initiated a Map Reduce job in Hadoop file system producing output files.

Then played with Hive and Pig.

Then worked with Pentaho dashboards and reports.

And then Pentaho Spoon which is a graphical tool to connect to a variety of data sources including Hadoop, running jobs, and exporting to output datasource.

I tried to get my first example to run in this environment and ran into several stumbling blocks.

Turns out the out of the box configuration needs to be tweaked and I think I over tweaked it.

However I got it back to it's original state by setting the fs.default back to 0.0.0.0:8020.

In order to get the Pentaho job to run though I think it will need to be modified to perhaps localhost or 127.0.0.1 - time will tell.

It's been quite a learning experience.

Similar to being dropped off from a helicopter in foreign territory and having to find your way back.

It can be done, but it's slow going.  I've run into just about every obstacle so far except I just keep pushing forward in the hopes that everything will work.

And so it goes!

Few Syllable Sound Bytes

"It is what it is."

"At the end of the day."

"Really?"

Our society has been reduced to a few syllable sound bytes.

Spoken by the masses to appear intellectual.

Who derives such epitaphs?

Anyone's guess.

Workforce Is a Battle Ground

Today's workforce is kind of creepy.

Co-workers pretend to be your buddy, stab you in the back.

There's no such thing as loyalty anymore.

Keep the business knowledge to themselves.

Take all the good projects.

Spy on your co-workers. 

So when the hatchet man a cometh' you be out the door.

Even though you may have more skills or better work ethic.

It's all about survival.

Look good.  Make them look bad.

The workforce has become a battle ground.

And if you sit there thinking otherwise, you'd be a fool.

Never underestimate the extent that some co-workers will go out of their way to make sure they keep their jobs.

That's what I'm talking about.

Childhood Is the Time to Be a Kid

When I was young, we had snow ball fights where you aimed for the face.

We hung out with the gang on the block and got into mischief.

We didn't tell our parent where we were going, when we'd back or what we'd be doing.

We left the house in the morning, and listed for "suppers ready" to be screamed from the porch.

We played tackle football, stickball, skateboarding, roller hockey in the streets.  Played smear the queer, kick the can and even truth  or dare with the girls down the street.

We sled right down 'killer hill' and went ice skating on 'Piggot's Pond'.

We walked to the mall to hang out and play video games.

Some of us smoked and drank at early ages, some even did pot.

Those were the days of long ago.

For better or worse.

I'm glad I grew up in the day and age where kids could be kids.

Find their way in a tough world.

Now a days, kids are just miniature adults.

Their every action is documented and notated for future reference.

Fail this test and your chances of college go out the tubes.

Such pressure to conform.

Yikes.

And remember this, the kids growing up today, imagine their kids in 20 years.

Scary!

Don't be Afraid to Negotiate Up Front

When you go for your next job, here's a tip, get as much as you can walking in the door.

Because once your in, you leverage goes out the window.

So don't be bashful asking for extra perks, more money, stock options.

From my perspective, you are lucky to get a raise now a days.

Maybe 1%.  3% if you're lucky.

And bonus.  A dinosaur.  Maybe get $250 or $50 gift card.

Holiday party.  No sit down meals.  Maybe a pot luck.

Human Resource = a stapler.  A copy machine.  A printer.  A desktop.  An employee.

Are employees assets or liability's.

Based on the recent scale back on the workforce, it appears employees are one of the highest expenses on the balance sheet.

And that resource can be outsourced, downsized, pushed out for early retirement.

So like I said, get as much as you can walking in the door, because that will be your last opportunity for perks of long ago.

Welcome to the new work force people.

Like it!

Half Our Income Goes to Pay for Insurance

I'll say it, insurance is a rip off.

It cost too much, they try to deny every claim, deductibles are too high, pre-existing claims.

And think about how much money we spend on insurance.

Car insurance, home insurance, health insurance.

Insurance on washers and dryers, AAA insurance, umbrella insurance.

Insurance on insurance.

And it adds up to.

I dare you to add up every single penny spent on insurance per month.

My guess is it hovers between 40-50% of you gross pay.

And this my friends, is a crime.

Except they got us, because if we don't have insurance, the cards are stacked against us.

A few days in the hospital can wipe out a nest egg if not insured.

I'd say if we didn't need to pay for insurance, we could survive on lot less income.

So we basically work to pay for it.

Does that really make sense?

Just saying!

Older Generation Fearful of Technology

It seems with the ever increasing demand for new better IT products, the rate of change is disregarding a huge segment of the population.

The older generation is fearful of this new magic called technology.

They don't understand it, they can't keep track of all the newest products, their grandkids are whiz's are every gadget they touch.

And the bottom line is they are embarrassed they don't understand anything about technology.

They can't figure out the remote, the IPhone, they are reduced to basic email and maybe Office.

Don't bring up the subject for the fear they may be exposed for being a dunce.

That's my take on it.  It doesn't seem to me that technology is geared for the older generations to some degree, and because of that, they are missing a huge revenue stream.

So create applications that anybody can use, out of the box, without custom setups and confusing lingo.

Because if you can create software for the basic user, you've just cracked open a huge market with deep pockets.

And so it goes!

1/23/2013

My Intro to Pentaho Big Data PDI Kettle

Pentaho's Big Data solution revolves around Kettle PDI.

Here's the webpage I viewed to get started:

http://infocenter.pentaho.com/help/index.jsp?topic=%2Fgetting_started_with_pentaho%2Ftopic_introducing_bi_suite.html

And here's the download page:

http://wiki.pentaho.com/display/BAD/Downloads

I'm working on a Cloudera VM with Linux Ubuntu so I chose that version to download:

Next step is the install...

Set the permissions on the downloaded .bin file:$ chmod +x ./pdi-ce-4.3.0-stable.tar.gz

To extract the archive to the current folder:

tar -xvf archive_name.tar.gz

To Copy the contents of the new folder to the /opt/Pentaho/server directory:

cp -r ./data-integration/* /opt/pentaho/server/data-integration

To remove the directory's in Linux use the command:

rm -rf

To launch the Pentaho Data Integration utility, type ./spoon.sh from the /pentaho/server/Data Integration/ folder:


Open one of the Sample File using the File --> Open drop down:



 

For a new report, select the repository Type:



I clicked the 'NEW' button which spawned a new screen:



http://wiki.pentaho.com/display/BAD/Configure+Pentaho+for+Cloudera+and+Other+Hadoop+Versions

http://diethardsteiner.blogspot.com/2011/05/kettle-sourcing-data-from-hadoop-hive.html

Creating my own Hadoop Job Executor, it seemed to run without exceptions, however, it didn't produce the expected output directory contents.


It seems there are many options involved with this utility and I only got to the tip of the iceberg.

1/22/2013

Learning Growth Spurts

Working in IT we learn the skills needed to do our jobs.

And then we taper off.

I learned Visual Basic, Oracle and Crystal Reports in 1995/6.

Learned Microsoft ASP in 1999.  Vantive and Actuate too.

Picked up .net early 2000s.  SQL-Server & DTS packages too.

Learned Java, web services, project management in 2006.

And soon after learned Microsoft BI (SSIS, SSRS and some SSAS).

So since 1996, I've only had a few growth spurts.

Except in the past month, I've picked up Cloud, Azure, OData, some jQuery, Linq because I installed Visual Studio 2010 and got some of the examples working which I blogged about.

And this past week, I've dabbled in Cloudera Big Data, Map Reduce, Hive, Pig and today got some Pentaho as well.

This year is rocking and rolling with new technology.

It's good to have that feeling of adventure and curiosity burning again.

I hope the trend continues!

Getting Started with Pentaho Big Data Analytics

First thing to get started with Pentaho is download their product:

http://www.pentaho.com/download/

I chose the Big Data Analytics option:



Set the permissions on the downloaded .bin file:

$ chmod +x ./pentaho-business-analytics-4.8.0-GA-x64.bin

Run file:

$ ./pentaho-business-analytics-4.8.0-GA-x64.bin









However, the BI server did not load, so I decided to uninstall everything.  Done.

Then re-installed, invalid or missing product keys, uh oh.  So I called Pentaho sales people, Todd, who immediately pulled me up in SalesForce.com on their side and knew all my contact info.  He sent over the 7 key files and I downloaded them.

However, next task was to upload them to the VM, which I used a product called WinSCP:



And then copy the files to the correct folder: cp -a /source/ /destination/

And then had to re-install the license keys - found this article and followed the steps...


 
you must be using the postgres user, then start the server...
 
To start the Enterprise Web Service:  ./start-pec.sh

Once installation completes, log onto the web URL: LocalHost:8089
UserName: admin
Password: #######


Pentaho Data Integration Server URL: LocalHost:9080




Creating something new: 








So far so good.  Except now I have to figure out the Big Data features and how it can generate Java Jar files using just visual interface point and click (I hope!).



1/21/2013

Cloud-Sourcing is the Future

With all the talk lately about the Cloud finally taking root, I think the next big thing will be 'Cloud-Source'.

What that is, is using the cloud to leverage resources, assets, time and money, by moving work to the cloud.

Because by outsourcing your infrastructure, you pay as you go, based on usage.

And you free your need to buy servers, maintain servers, patch servers, disaster recover servers, backup servers.

And you can now hire developers from anywhere who do work anytime per the project or long term.

So you can outsource to different states, countries, you name it.

And you can host your database in the cloud, aside from legal issues in other countries and the possible chance that your vendor goes out of business, you are safe and secure with data in the cloud.

You can have your Business Intelligence in the cloud as well, generating reports up in the sky, against databases there as well.

You can have your big data initiatives in the cloud.  And hire people with the skills to work on it, they can be located anywhere on the planet.

And of course the webs can be hosted there too.  Not only that, with virtual machines, you can basically run any on just about any platform with any language and any web server.

And it's all elastic, meaning you can start off small and grow as big as you want.  You can rent a server for an hour or 30 servers for an hour.

You only get charged for what you use.

Lastly, I believe there's a market for middlemen, who know how to best navigate in the cloud.  And they can sell their services to small to mid size company's, even large ones down the road, where these service providers migrate apps to the web, can explain pricing models and estimates, and have their teams of programmers take care of the leg work up in the cloud.

That's the way I see it.  It's basically come down to this.

There are really no more barriers to moving to the cloud so what are you waiting for?

Put your infrastructure in the cloud, and forgetta about it.

Make it so!

My Intro to Cloudera Pig (Day 3)

To install Pig visit this URL:

https://ccp.cloudera.com/display/CDHDOC/Pig+Installation

 Typing in the commands we get...


Set the classpath to include the Pig/lib directory:

 sudo vi /usr/lib/hadoop-0.20-mapreduce/conf/hadoop-env.sh
cntl-A to get to end

append line Hadoop_Classpath:   :/usr/lib/pig/lib
:WQ
quit

And here's the documentation for Pig:

https://ccp.cloudera.com/display/CDHDOC/Pig+Installation

*(Here's my Day 3 Post) http://www.bloomconsultingbi.com/2013/01/my-intro-to-cloudera-hive-day-3.html
*(Here's my Day 2 Post) http://www.bloomconsultingbi.com/2013/01/cloudera-hadoop-day-2.html
*(Here's my Day 1 Post) http://www.bloomconsultingbi.com/2013/01/first-try-at-cloudera-hadoop.html
*(Here's my Day 0 Post) http://www.bloomconsultingbi.com/2013/01/getting-started-with-cloudera-hadoop.html

My Intro to Cloudera Hive (day 3)

Today I installed the Hive component of the Cloudera Hadoop ecosystem.

Hive Documentation:

http://archive.cloudera.com/cdh/3/hive/

Hive Installation:

https://ccp.cloudera.com/display/CDHDOC/Hive+Installation


Install the necessary files to the directory: /usr/lib/hive/lib

 
Add:  /usr/lib/hive/lib/* to the HADOOP_CLASSPATH so it can reference the necessary JAR files to run HIVE...
 
Running Hive:
 
 
$ hive


Run the script:


and it gives the results:


And now you can download sample data files from this URL:

https://cwiki.apache.org/confluence/display/Hive/GettingStarted#GettingStarted-ExampleQueries

My first impression is that HIVE is a pseudo SQL like language.

You 'create' the table, load the data, do 'selects' against the data and then 'drop' the table.

It still has a 'structured' feel to it.

So much to learn.

Having fun!

*(Here's my Day 2 Post) http://www.bloomconsultingbi.com/2013/01/cloudera-hadoop-day-2.html
*(Here's my Day 1 Post) http://www.bloomconsultingbi.com/2013/01/first-try-at-cloudera-hadoop.html
*(Here's my Day 0 Post) http://www.bloomconsultingbi.com/2013/01/getting-started-with-cloudera-hadoop.html

Bottom Rung of Career Ladder

If you stop to notice, many of the jobs less appealing are being gobbled up by people from other nations.

They sweep floors, work fast food, in hotels, you name it.

Because they are hard workers who don't mind taking jobs of less status for less pay.

To many people they would never consider taking such positions.

Except the one's who do are getting good work experience.

And a paycheck is better than no paycheck.

Many of these people don't have a car, so no car insurance, no gas money, no repairs.  They don't have health insurance or life insurance.  They tend to rent so not mortgages or house insurance or costly repairs.  They buy only food and bus fair and rent.

So because their expenses are low, they can survive a descent life on low wages.

How can an entire culture exist at the bottom of the career ladder working part time, rotating shift jobs, at minimum wage and seem happier than the locals?

Because they have community, they help each other, they don't have the same expenses that most people have.

I say watch out though, because at some point the tides will turn, and it won't be just the lower status jobs they take, it will be the accounting positions, bank positions, insurance, you name it.

So our high paying jobs will be under attack from the bottom, the same jobs are being outsourced to other countries now, competition for good jobs has increased, salaries have decreased, taxes have increased, the stock market and housing market have depleted the majorities nest eggs, education is becoming more expensive, people are working past 65 now, and inflation is making us poorer by the second.

That's the truth of the matter.

Solution, tighten up, reduce expenses, pay off your debt.

And pray!

Don't Make it Worse

We'd all love to change the world.

Make it a better place for you and me.

And we have dreams to save the planet, feed the hungry, house the poor.

And we bump our heads continuously and the effort seems future.

So we give up.

What I say is this.

You don't have to improve the world.

Just try not to make it worse than before you got there.

We can dream of utopia and everyone is happy, healthy and prosperous.

Except in the current infrastructure this is not possible.

So do your best, to not make it any worse.

Hold your comment, prevent that fight, don't escalate the problems and make them worse.

Just try not to destroy the planet or humanity faster than what's already occurring.

Stand your ground.

Exceptional Strength

We tend to think that people must be superstars at what they do.

And it's quite difficult to be experts at everything.

The more I look at it, the key is to exert the effort required and no more.

If your goal is to move a 3000 pound van across the intersection because the car won't start, then it will require tremendous force.  And when the van is across the street, your strength is no longer needed.

And when confronted with a tough intellectual problem, using sufficient strength to solve the problem is required, and then no more.

And when handling a tough life situation, using the correct amount of inner strength is required, but no more.

Thus the strong person knows when and where to spend their energy.

Which means that a bystander watching this person may not see the person's true strength.

This person may blend in with the crowd and go unnoticed.  Sometimes for a lifetime.

Except that person keeps pushing forward, while others have plateau or even slid backwards.

This quiet person of exceptional strength is an enigma to society.

He doesn't appear to have any particular talent, yet there is nothing he can not accomplish.

And so it goes!

1/19/2013

Movie Recommendations

Little Man Tate Movie Trailer

Searching for Bobby Fischer Movie Trailer

bonjour monsieur shlomi Trailer
 
Good Will Hunting trailer

The Greatest Game Ever Played Trailer

The Natural Trailer

The Rookie Trailer

Brilliant Mind Trailer

Shine Trailer

Rocky Trailer

Contact Trailer

Fame Trailer

Pollack Trailer

Cinderella Man Trailer

Seabiscuit Trailer

Shawshank Redemption Trailer

Basquiat Trailer

Benny & Joon Trailer

Running On Empty Trailer

Peaceful Warrior Trailer

Off the Map Trailer

Garden State Trailer


*/*\*/*\*/*\*/*\*/*\*/*\*/*\*/*\*/*\*/*\

1/18/2013

How Did I Get a Career in IT?

Once upon a time we were all young kids with dreams of growing older.

It's almost as if the clock starts in kindergarten and we propel ourselves forward as fast as we can.

Everyone wants to know, how old are you?

And then we become teenagers, then sweet 16, then we turn 18, sign up for the draft and then 21, we consume our first alcohol drink (wink, wink!)

And somewhere's along the way, we make a conscious decision of what we'd like to be as adults.

Some of us find jobs right out of college, perhaps a trade school, others start families.

While other attend college, pick a major, get educated, then find a career in which they studied.

This is the typical path.

I did not take this path.

For I had no clue what to be as an adult, never put 10 minutes worth of thought into it.

Never dreamed of having a family, having kids, getting married, getting a job, settling down, none of that.

I remained a kid for as long as possible.  Even in college, in my junior year, the guidance counselor said I really need to pick a major.

Which was heading in the direction of Business.  Minus the below average in accounting and management courses, I changed majors to Liberal Arts.  And by taking an archaeological dig at USF in Tamp, I was able to earn enough upper division courses to graduate on time.

And that's precisely what I did.  And after 4 years, I was the proud owner of an Anthropology degree.

With no job, in a recession, with no money, I moved to my parents home in Marietta (Atlanta), Geogia.

And lived in the room above the garage.  And I attended those user groups of unemployed people and everyone would talk about not having a job.

So I did temp jobs.  Worked in hotels setting up conference rooms, moving furniture at IBM, evicting buildings that couldn't pay the rent and we moved their stuff to the side of the road where the bandits took everything.

I had one job working the copying machine and didn't last as I couldn't figure out the staples, double copy, etc.

Until I finally landed a job at Sears Credit, because my mother worked there for 20+ years.

And started along the road of adulthood and responsibility.

Because soon afterwords, I was paying for my own car insurance, food and eventually found a roommate to move in with at $400 a month, rats included.

Good old Ted.  He was about 10 years older, much experience in life.  We had Ted's taco's for two on Tuesday and he could really cook (and drink).  Although I had to bail him out of jail one time, put $2k on my credit card, he did repay me.

And that's when I got downsized from my next job and moved to Florida.

I was on my way at that point, staring to climb the corporate ladder, income started to increase, and when I finally got into IT, I found my new career.

And the rest, as they say, is history.

Is Business Intelligence Mission Critical?

Today I was asked if my software was mission critical.

Can the business continue if we don't have access to Business Intelligence?

Um, to me it is.

In an ideal world, the data is driving the business.

Except in reality the business can continue even if the BI system goes down for a day or week.

Maybe one day this won't be the case but for now it's true.

Sure the internal customer's won't be happy if they can't skim the data.

But truth be told, business can continue, although briefly, without reports.

And there you have it!

Cloudera Hadoop (Day 2)

So today is day 2 of Cloudera Hadoop.

Today I learned to set the ClassPath by

export HADOOP_CLASSPATH=path of JAR / Class Files

Learned that the file this gets saved to is called hadoop-env.sh and can be found in the directory:



/Usr/lib/hadoop-0.20-mapreduce/conf

Learned a basic Linux command "pwd" tells you your current path in the directory structure.

To modify the contents of the file:
sudo vi /usr/lib/hadoop-0.20-mapreduce/conf/hadoop-env.sh
cntl-A to get to end
:WQ
quit

To simulate the admin:
sudo su
exit

To kick off a Hadoop job you enter:

hadoop jar wordcount.jar org.myorg.WordCount /user/cloudera/input /user/cloudera/output

the input directory must already be created in HDFS

hadoop dfs -mkdir /user/cloudera/input

and you must copy your test files to that location on the HDFS server:

hadoop dfs -copyFromLocal /home/cloudera/wordcount/input /user/cloudera/input

assuming you change your directory / folder name accordingly.

and you must first clear the contents of the output directory:

hadoop dfs --rm -r /user/cloudera/output
hadoop dfs -rmdir /user/cloudera/input

if you log onto the Hadoop website, localhost, you will see your input folder as follows:


Here's a posting from day 1 http://www.bloomconsultingbi.com/2013/01/first-try-at-cloudera-hadoop.html

And I got the tutorial example to work on my virtual machine! Yippie!!!!

1/17/2013

First Try at Cloudera Hadoop

Today I entered the world of Big Data.

By installing Cloudera VM to my work PC.

And posted a blog about that:  http://www.bloomconsultingbi.com/2013/01/getting-started-with-cloudera-hadoop.html

This is research and development for my job as I'll be working with Hadoop and possibly Splunk in my new role.

In order to mash weblog data in the form of Big Data with our current Enterprise Business Intelligence data.

So I started on the initial project to get acclimated with the environment.

They provide the sample code, however, that doesn't necessarily mean 'easy'.

First thing I did was to create a text file, add some Java code into a class and save the file.

Next step was to compile the java class into a Jar file and associated java files.

Easier said than done.  Because getting familiar with the Linux file structure takes some time.  As well as the commands and classpaths and what have you.

I eventually compiled everything which led to my next road block.

It seems the Hadoop system was not reading my new JAR file, probably because the path location was not indicated in the Hadoop Classpath, which it wasn't.

I found out we have a resource in house that is familiar with this and I pinged her.

She said to create an environment variable and append my new path to the current Hadoop Classpath.

Key thing is to use `back ticks' in the form of:

export MY_CLASSPATH=`hadoop classpath`:/home/cloudera/wordcount_classes/\*

or something to that effect which you can then reference as $MY_CLASSPATH

So that worked and I'm on to my next roadblock.

Which is my understanding of how the sample is supposed to work.

However that is enough for today.

The cool thing is this project is sponsored internally so I'm authorized to learn this stuff.

I'd have to say my 4 years of Java coding is paying off a bit, however, it would probably go smoother if I had more experience on Linux.

I'm real excited to get into this space I've been reading and blogging about it for a long time.

And there you have it!

Getting Started with Cloudera Hadoop

Getting started with Cloudera Hadoop.

First go to this site:

https://ccp.cloudera.com/display/SUPPORT/Cloudera's+Hadoop+Demo+VM+for+CDH4

I chose to download the VM:

UnRar the package:


Creates the following Directory / files:


Download the VM Player:

https://my.vmware.com/web/vmware/free#desktop_end_user_computing/vmware_player/5_0








Running the VM:





Hadoop Tutorial:

https://ccp.cloudera.com/display/DOC/Hadoop+Tutorial

Now we're ready to begin (the fun)!

Enjoy!