4/30/2014

Great Data Warehouse Clients

Building a data warehouse takes a lot of effort.

However, it's always nice when you land a client who is eager to assist.

They willingly tell you the information you need to do your job, like:
  • Where the source databases reside
  • the queries used to pull the data
  • the tables in which the data resides
  • the server IP address
  • the database names
  • user id's
  • the business rules
  • the history of their applications
  • why things were done a certain way
  • the gotchas
  • the exceptions
  • they help you get the infrastructure in place for
    • staging
    • edw
    • domain server
    • SharePoint server
  • Supply Active Directory accounts for development
  • Service Accounts
  • VPN info to connect from home to allow for after hours coding
  • they introduce you to the business
  • assist in gathering specs
  • they help formulate a project plan with priories and action items
  • they buy into your effort
  • responsive to your questions
  • they're enthusiastic and encouraging
  • make your stay very welcome
Very refreshing~!

4/26/2014

Early Days of Bloom Consulting BI

So what were the early days of Bloom Consulting like?

Well, in the year 2000, August, I spoke with an attorney and he agreed to do the paperwork to set up a sole proprietorship for me, post a listing in the newspaper all for $125.  I didn't think much about it then, just something to do.

I worked with a guy who had an impeccable skill set.  He knew the cutting edge stuff, at the time for Visual Basic 6, we were writing DLLs with Middle Tier and Back End Tier based on a book he showed me.  And on my job I wrote a set of code to recursively loop through Visual Source Safe and Check out, Check In, Add files, etc.

He asked me to write some similar code for a project he was working on, as he owned a side business.  I worked at night and on the weekends.  His code used XML and DOM and was so good I could barely understand it.  However, I complete the task and got paid.  That guy is and was brilliant.  Since then he owns multiple business and is doing well for himself.

At the time, he gave us all a demo on Microsoft ASP, which was new, web technology.  And another friend got me a part time job building a website for a travel company.  I worked after my full time job on site, even got a parking ticket one time for parking in the wrong spot.  The company wasn't doing so well, and I hadn't gotten my check so I went to speak with the owner, and he wrote me a check out of his personal account.  That was the end of that contract.

And that is how I got started on the side business.  It's been 14 years now since then.  In the meantime, I did a side contract for a lighting company I found on Craigslist, didn't pay much, but I got good experience, which helped me land a really good contract, which lasted 3+ years.

I also worked another contract for someone I met from the user group, got some good experience.  He later hired me for another contract.  And then offered me full time work.

So yes, the part time job has helped.  Financially as well as learning new skills and networking. 

And that's how I got started in my side business Bloom Consulting.

#Cloud #Mobile and #Data are the Future

If you aren't changing your focus to  Cloud, Mobile and Data Ecosystem, you're heading in the wrong direction.

Cloud First is the new mantra.  Easier deployment model.  More challenging pricing model.  However, software vendors can speed up release cycles, get software out faster, modify code faster, get a wider audience and cross sell products.  I read recently and spoke with some employees at the SQL Pass in  Charlotte, NC last year, that indicated the Cloud First model going forward.  The employee indicated the difficulties in pricing as you have business users, consumers, non profit, educational, and more times than not, they overlap, how do you distinguish appropriate pricing.  Justly so.

Mobile is hot, so much that desktop PC could soon become dinosaur.  Microsoft just picked up a new business unit, Nokia, which I happened to purchase a new mobile phone days prior, with the Windows 8 operation system, I love it, better battery life, bigger screen, integrates tightly with all my Microsoft Online email accounts, Office 365, Power BI, you  name it.  Mobile is the future, if you develop code, think mobile connected to the Cloud and you can't go wrong, and will find sufficient employment going forward.

Data Ecosystem is hot, why, every department of every company can or should be focused on the data they capture every minute of every day.  To find insights.  To reduce costs.  And increase sales.  And manage the business.  And adjust business processes.  Data will fuel the economic model going forward.  That's a reality.

So to summarize, if you develop applications that reside in the cloud or even hybrid on premise, which get deployed to Mobile apps, and then process and consume that data, you're golden.

Make it so~!

4/25/2014

#Microsoft Access 2013 Import to SQL Server 2012

Have you ever wanted to import a Microsoft Access database into Microsoft SQL Server?

Well, Microsoft offers a new utility to do just that.

Microsoft SQL Server Migration Assistant, which you can download here:

http://www.microsoft.com/en-us/download/details.aspx?id=28763

Let's walk through the steps:














































As you can see the tables were brought in as well as the Queries converted to Views.  This should help get you started and on your way.

I've worked with Access for many years and although it has some limitations, it's a great tool used by many many organizations.  And chances are if you work as a Data consultant you'll have a need to import into SQL Server.

Good news, they also offer other utilities for other databases:

http://blogs.msdn.com/b/ssma/


After using the Utility for a bit, I discovered it does not handle Insert, Update or Delete statement conversions:

Analyzing metadata...
Converting query Database.[Customers Query] ...
 Errors: A2SS0041: Append query cannot be converted because it is not supported.
Conversion finished with 1 errors, 0 warnings, and 0 informational messages.

Oh well, it's still a useful tool.

Thanks for reading and happy coding!

4/23/2014

Two Way Communication to Expand #AI Awareness

Imagine a baseball game.  A pitcher throws the ball.  An event in time.  What happened?  Did the batter swing?  Did he connect with the ball?  Where did the ball go?  Did it leave the infield?  Was it caught?  Was it a home run?  Did the runner get on base?  Was it an out?  Was it the third out?

So many events?  Which raise questions.  And the answer raises new questions.  Which spawns more questions.

All these events can be captured.  And many of them are.  To create stats.  And there are paid professionals who mine this data for a living.  And their demand is increasing.

Each event must be captured and stored in an application connected to a database.  And the process for doing so is most likely a person.  And he or she views the event, records it, for later consumption.  Once the event is over, it's gone.  So when the deep mining algorithms used to process the data has a one directional inflow of information, a series of events in chronological order.  The process is not two way, in that as the system is fed the information, it has the ability to assess, process and ask questions in real time.

It's like explaining a song to a deaf person.  Or visualizing a sunset to a blind person.  Sure they understand what's happening, but they can't feel the emotions of a Mozart Symphony or a brilliant orange sun drifting beneath the horizon.  There is no connection of live feedback, it's difficult to feel the  emotions, which bring up memories, which spawn new emotions in an endless cycle.

It's simply a one directional information feed processed in real time or at a later date.  And because of this, the picture is limited, it's not holistic or interactive, like the hard of hearing person not fully hearing the music, they only get a subset of information which is limited, which doesn't have the two way connection.

I think that's the next phase for true Artificial Intelligence.  Open the awareness of information in real time to create a link so a two way communication can be established to allow a more dynamic interpretation of peripheral input for greater interpretation.  Like viewing the baseball game, a two way feedback system could allow the system to kick off multiple queries based on current events, and depending on the next result, it spawn additional queries, some looking for past events to predict potential events, statistically weighted and then verified for accuracy in real time, which gets stored in the brain of the machine for later retrieval and analysis.

Computers lack an awareness, because of lack of interaction with their environment, in real time, because it's a one way communication.  By allowing a two way communication to occur, the AI  system could run more jobs in parallel to predict what's happening, and adjust it's behavior accordingly.  What the computer really needs is to take some LSD to expand it's awareness, at this point, it's just to "square".

4/22/2014

And Here's some #Microsoft Training Sites

If you're into Microsoft programming, have they got some educational resources for you.  Free.

Here's the first one:

Technet Virtual Labs

http://technet.microsoft.com/en-us/virtuallabs

Then there's Microsoft Virtual Academy

http://www.microsoftvirtualacademy.com/

And MSDN

http://msdn.microsoft.com/en-US/

The Official Microsoft Blog

http://blogs.technet.com/b/microsoft_blog/

There's SQL Pass for SQL folks

http://www.sqlpass.org/

How about Code Academy

http://www.codecademy.com/

Or for paid membership PluralSight

http://www.pluralsight.com/training

Another site which you'll have to pay MeasureUp

http://www.measureup.com/

There's Microsoft Learning

http://www.microsoft.com/learning/en-us/default.aspx

Microsoft Office Training

http://office.microsoft.com/en-us/training/

New Horizens

http://www.newhorizons.com/CoursesAndCertifications.aspx

Microsoft Personal Training

http://content.microsoftstore.com/personaltraining

And a great resource on latest technology Inside Analysis with live webcasts

http://insideanalysis.com/

And finally Twitter

https://twitter.com/

So that should help get you started on some heavy duty learning.

Death of On Premise Solutions?

IT has typically hosted their own software packages On Premise.

Back in the day, the Mainframe stored the data, the applications, business rules and code which ran their entire businesses. Then we had the Client Server revolutions connecting to Relational Databases.  Then distributed client server solutions.  Then the web grew up and people hosted their websites on the web.  And then the Cloud appeared.  And matured.  Because people are starting to feel secure about hosting their data in the Cloud.  And we now have the ability to run our entire business there.  From hosting websites, to hosting databases, to Big Data, accessible globally.

It has compliance, scalability, security, elasticity, disaster recovery, a plethora of options for technology packages from running Virtual Machines in the cloud to Hybrid solutions connecting to On Premise solutions.

With that said, will there continue to be a need to host any technology On premise?  Why purchase hardware?  Why pay for backups?  And people to administer?  Let the power of Cloud technology simplify your life.  Leverage cutting edge technology in real time, hosted by reliable vendors at cost effective prices.

Some software vendors have taken the approach of "Cloud First".  Business' will be moving everything to Cloud, to create a mobile workforce.  There will be a time in the future where CIOs begin to realize that purchasing an internal IT infrastructure is not cost effective.

I think the writing's on the wall.  There's a shift occurring today, an explosion, and people are waking up to the power of the Cloud.

Hop aboard or get left behind~!

4/20/2014

Make Time to Learn

Programmers get lazy.  They get stuck in a rut.  Doing the same technology.  And perhaps they complain they don't get to use the latest stuff.

I believe that it's the programmers responsibility to learn on their own time.  It's not your bosses job to teach you new stuff.  It's not your employers job either.  Just because you've fallen behind, there's only one person to blame, and if you don't know who that person is, go look in the mirror.

Nobody said a career in programming would be easy.  It's not like other careers where you go to school for 4 years, then enter the workforce and stop learning.  On the contrary, once you get into the workforce, that's where the learning really begins.

"but I don't have time to learn the new stuff"

"when I get home from work on Friday, I don't want to think about it until Monday morning"

"we are a #### shop and we don't use #### technology, how am I supposed to learn it?"

These are all common responses.  However, I still say it's the programmers job to keep current.

There are:
  1. many products on the market which allow you trial versions to download and learn.
  2. countless tutorials online, some free, some cost money.
  3. user groups on and offline which will gladly accept you as a new member.
  4. countless blogs on any technology, you can find them without too much effort.
  5. vendor site's which offer documentation.
  6. conferences, some local, some require travel, some free, some not.

Bottom line, you have to make the time to learn on your own time.  No sympathy for excuses.

And there you have it.

4/19/2014

The Road to Technical Certifications

Working as a programmer, you can get Certified in most any language.  Right now I'm on the learning path for Microsoft MCSA SQL Server 2012 or Microsoft Certified Solutions Associate.

It consists of three tests, of which, I've passed the first one: Querying Microsoft SQL Server 2012

Microsoft offers a free training site called "Microsoft Virtual Academy", you can register for free.  Then search for courses you're interested in, and create a plan which you can add courses too, and it tracks your progress over time and you can earn rewards, here's mine:

Watched 6 hours over the weekend:
I've included 2 courses to attend:


 Course consists of:
And a second course:

Course consists of:

As you can see, I've completed the first course:

Once you feel ready, you can sign up to take the real test:





To recap, there are three courses / test required for the MCSA as follows:


 There's also a site you can purchase training software from called Measure Up.  I purchased the first course and practiced and studied and passed the first exam, Querying Microsoft SQL Server 2012.

I also purchased the remaining two courses:





And here's what the GUI looks like (client / server based):



The exams are registered through a site called Prometrix, and they sometimes offer a "2nd Shot Exam Voucher" at no cost, in case one doesn't pass the first time, which is quite common.

The good thing, if you pass a test, you become a Microsoft Certified Professional and you get a transcript:



And if you give that to your employer, and they have a certain number of MCP on staff, the company receives a certain Partner Level, for example, here's the Business Intelligence Partner requirements site: https://mspartner.microsoft.com/en/us/pages/membership/business-intelligence-competency.aspx.

So getting certified could help both you and your employer.

Here's some cool courses I plan to attend - Big Data style:

New list of courses:


So that's basically a summary of what options are are there for getting certified, how to plan, study material.  Hope you enjoyed it and get busy studying~!






4/18/2014

ETL in the Cloud?

Web application development typically occurs in an IDE. Which resides on a workstation. The code gets written, debugged and ported to a test web server, then production.
Microsoft has created a new platform by porting the Visual Studio on the web. Which integrates nicely with Team Foundation Server in the cloud. This allows joint development by remote developers. Pretty awesome.

Microsoft also has a web based version of Office which integrates with Power BI and Office365. This allows users to work with data in the Cloud, save versions and share docs. This is quite awesome.

How about ETL extract transform and load? Microsoft developers program in SQL Server Integration Services SSIS. Which resides on a workstation. What would be nice is if there was a packaged solution to allow ETL developers a web based platform to do their work as part of the Azure package.

And how about if you could call data sources in the Cloud, in SQL Server, HD Insight or on premise.

I suppose its just a hypothetic wish list. Sure would be a nice feature to add to the complete data solution ecosystem.

Where is IT Heading?

Where is IT heading?



To the Cloud.  
The Cloud is essentially a remote hosted service.  They've been around for a long time.  You can host web applications, databases, Big  Data, VM's, Windows Servers, Linux Servers, there's really no limit to what you can host in the Cloud.

To Mobile devices.  
More and more people are connecting to the Internet via Remote Mobile Devices.  Many people have more than one device.  They are convenient, secure and accessible.  And with new technologies allowing Web Developers to port applications to different Operating Systems seamlessly, it's only going to grow.

To a Remote IT Workforce.  
Why pay for office space?  Why be limited to hiring IT staff from the pool of local talent?  With Cloud hosting packages, you can hire people from anywhere on the planet.  In different time zones.  For part time or contract work.  Specific projects.  Why go through the hassle of hiring full time workers that need benefits, vacations and health care.  Remote Workforce is the future of IT.  And possibly any job function for that matter.

To building business around Data.
For those who haven't yet realized, Data is the lifeblood of an organization.  And that includes any business, anywhere.  Data is collected, harnessed, to find insights to lower costs and increase sales and streamline processes.  And now with unstructured data, there's really no limit to how much data a company can collect.  As well as Public Data Sources, the sky's the limit.

So wake up to the new dawn.  IT is changing.  No longer a back office hidden from view profession.  IT is taking off into new terrain.  Hop aboard, or get left behind.

4/15/2014

Programming Requires Tremendous Thinking

People don't like to think.  It's obvious.  Just watch someone in front of the television, scanning through the mental wasteland.  Click.  Click.  Wait go back. Click.  Click.  Surfing the tube.  Idiot style.

So why don't we have more good programmers.  Um.  Probably because you have to think.

There's no room for mindless numbed down brainless lack of thinking.  In fact, it's the exact opposite.  Like doing mental gymnastics for 8 to 10 hours per day.  Thinking.  Minute details.  Running into countless obstacles.  Over and over.  Hours of pouring concentration into a single task.

People don't like to think.  They like to zone out on auto pilot.  And Computer Programming, especially working with data, requires tremendous concentration, focus, problem solving, attention to details.  In our society, that's hard to find.

And so it goes~!

4/09/2014

Cookie Cutter Live Presentations

Stand up comedians are really funny.  I liked to listen to Steve Martin, Robin Williams, Bill Cosby from back in the 1970s.  We used to listen to the records at a friends house and laugh hysterically.  Those were the days.

The thing is, if you watch a performer, their entire stage presence is thought out well in advance.  It's rehearsed, performed multiple times, joke for joke, line for line, facial expressions and all.  There's really not much spontaneity.

What's really challenging is free form ad-libbing comedy.  Just get up there and wing it.  Now that's real humor.

Same with giving presentations to audiences.  Most people have everything outlined line for line, word for word, and they reuse the same presentation dozens of times.  I admit they are informative solid presentations and you walk away having learned something.

But the best presentations I've seen had good content, good flow, but they didn't read the Power Point word for word.  They used it as a base to talk around different subjects, interject personal experiences and preferences and dislikes.

Perhaps we have a cookie cutter approach to live performances, go with the known, don't risk the experience of being vulnerable.  Perhaps life in general.  Going through the rehearsed motions like robots, devoid of any emotions.  The audience is there to listen, but also to be engaged and participate in the experience.  And reading lines from a Power Point presentation bores the tears out of most people.  People are craving that connection.  Give them something to remember.  Something raw.

Why CIOs Are Delaying #Hadoop Adoption

In reality, many organizations have reporting infrastructures in complete disarray.  I think this is one of the dark secrets of the data world.  Many company's big and small have systems which are duct taped with manual processes, Access databases, Excel spreadsheets with 20+ tabs, no data goverance, no visualizations, no real time processing, no streaming.

People wonder why many CIOs steer clear from Hadoop?  There's your answer.  They would have to look at their reporting messes and be held accountable, for getting into the messes they are in.  How are they supposed to bring in a billion records to process, do machine learning, gain insights when their main data source is a cluster of Access database that reside on a shared network drive updated by someone in the accounting department.

You have to walk before you can run.  And many company's are still crawling.

Hadoop Positions Increasing

I've traditionally been a data guy.  With traditional databases.  And reports.

I wasn't into SAS or SPSS.  I kind of knew of their existence.  But building models and statistical analysis wasn't part of my skill set.  They were just separate universes.

Except the worlds are colliding.  Now in order to be a data guy, you have to know traditional databases and reporting.  And Cubes and Data Warehousing.  And Hadoop.  And statistical languages like R.  You probably need to have years of programming experience with Java, Python, Ruby, .net or c.  And you have to know Architecture in addition to coding, so that means Permissions, Networking, Configuration, Change Management, etc.

That's a tough set of skills for a single person.  Yet that's what the job posters are looking for now a days.  It seems the number of Hadoop positions are increasing.  Only thing is, the salaries aren't as high as I expected, comparable to Data Architecture / Warehouse positions.

I was learning Hadoop a few years ago.  Kind of an early adopter.  I'd like to work on Hadoop integrate into current skill set.  Except jumping into a full time role where they expect you to produce hit the ground running with short deadlines and unrealistic expectations seems like a recipe for disaster.

So I'm going to be patient and wait for Hadoop to come to me.  And continue to learn it in the background.  No sense in jumping in with both feet at this point in the career.

And so it goes~!

Competitive Markets Are Good for the Economy

The business world thrives on competition.

Well, maybe.

It seems to me that we have the illusion of competing forces.  For every distinct market there are two, three, possibly four competing brands.

Coke vs. Pepsi.
Burger King vs. McDonalds vs. Wendys vs. Arby's
Subway vs. Quiznos vs. Jimmy Johns
Bank of America vs. Chase vs. Citibank
CVS vs. Walgreens
BP vs. Shell vs. Hess

Competition fuels agile market pricing.

What if you were to look at the major stock holders of each of these corporations.  Chances are if you search back far enough, past the mutual funds, past the hedge funds, you'll see that they are primarily owned by the same people.

With the illusion of competition, it would appear to the unknowing eye that we have choices when it comes to our spending dollar.  But in reality, where ever you spend your hard earned dollars, it eventually ends up in the same pocket.

Enjoy your freedom of choice!  And your illusions~

4/08/2014

12 Careers to Start without Capital

I think today's youth got a raw deal.  There's so many things to purchase, that gets advertised from every direction.  Yet the quality of education has deteriorated while the number of high paying jobs has dwindled with fierce competition because the baby boomers forgot to save for retirement and are having to work into their 70's and 80's.

If I was going through the system, around the high school age, here's what I would consider.

Self Employed:
  1. Pool Cleaning
  2. Tree Trimming
  3. Lawn Maintenance
  4. Pressure Washing
  5. Car Detailing
  6. Dryer Vent Cleaning
  7. Headlight Repairing
  8. Pest Control
  9. Locksmith
  10. Pet Sitter
  11. House Cleaning
  12. Handyman
These are just suggestions for those interested in being their own boss and bypassing the system that's stacked against them.

For those more inclined, I would get an internship while in High School, get to know the industry, get some solid skills from taking classes, get to know your teachers and attend community IT gatherings and get your foot in the door.  Once you have a job, with solid experience, with a reference, you are officially in the workforce, and probably nobody will ask for a college degree going forward, as long as you can back up with results.  Then take a college class online or at night to learn new skills and keep current.

That's how I'd do it, college is expensive, prolongs your entry into the workforce by 4 or 5 years, and you don't really learn the skills necessary to survive in the workforce.

There you have it, free advice, we'll be here all week.

4/06/2014

IT Programmers Must Adapt

You would think programmers stay in IT for their entire career.  I know several people that were good programmers who left IT.

One guy was an Oracle DBA.  For some reason he couldn't find work.  I'd forward job requests to him from time to time.  I think he may have been forced out of IT due to his age.

Another guy, an old Mainframe programmer turned Java programmer, was hard of hearing.  After being downsized, he never found work again.

Same story for a report writer I worked with, couldn't find work most likely due to his age.

Except I know other people, for instance, who left IT to become a high school teacher.  One guy was into airplanes and he has his own business building small skypes aircrafts, instruction and gets to live his dream.

One lady got out of programming to go back to school to learn paralegal.

I've know people who had to move across country to land a job.  I know some people taking drastic pay cuts to stay in IT.  An ex-coworker I worked with went a little cookoo and is no longer able to work period.

The world of programming changes fast.  Some people are able to retain the same skill set for decades without learning new stuff, they are the exception.  Most programmers have learned all new skills sets over the years.  Some programmers became DBAs, some programmers became Managers, some Managers got out of IT as some middle management positions have dried up.

Programming is taxing mentally and emotionally, requires change, adaptability, constant learning.  Some people just don't have the stamina to keep it going.  Some people get burned out and never touch a computer again.

However, if you like logic, like to solve problems, like challenges, like to learn on your own and like to be creative, there's no better job in the world than being a Computer Programmer.

4/03/2014

What's Hot in Technology

Here's what's hot in today's Technology Sector, from my observations:
  1. Mega Data - Hadoop - been in production since 2006
  2. Mobile - everyone has portable devices
  3. Cloud - adopted publicly as secure and reliable
  4. Robotics - begin integration to the workforce
  5. Artificial Intelligence **
  6.   Algorithms
  7.   Neural Networks
  8.   Predictive Analytics
  9.   Deep Data Mining
  10.   Data Scientists
  11.  Virtual Reality
  12.  Virtual Assistants
  13. Surveillance **
  14.  Drones
  15.  Web Tracking
  16.   Mobile Device Tracking
  17.   Financial Tracking
  18.   Social Media Tracking
  19.   Audio Surveillance
  20. Programming for all devices **
  21.  Web Apps
  22.  Desktop Apps
  23.  Mobile Devices
  24.  Tablets
  25. Wearable Devices
  26.  Wrists
  27.  Glasses
  28.  Interactive / feedback
  29. Digital Currency - if regulated by authority groups this will become reality
  30. Sensors
  31.  RFID tracking everything