Cloud Questions
New In-Person Training Announcement for Denver, CO!
We're partnering with SolidQ to bring you a four-day, in-person class with hands-on labs. The class will be held March 06 through March 09 from 8:30 a.m. to 4:30 p.m. in Denver, Colorado on SQL Server Integration Services 2008 (SSIS) and applying its enterprise functionality to data warehouse ETL systems.
Chris Randall, course instructor and SolidQ USA mentor, will focus on the design, development, deployment and operation of SSIS solutions. Full SSWUG.ORG members can receive a significant discount! Get more information at the site.
Get more information here.
Cloud Questions
We have a number of thoughts from our readers regarding questions about the Cloud.
Ameena
These definitions were really helpful for people like me who have been hearing about "Cloud" since couple of years, but really does not have much idea. Because of so many different articles available that you do not know where to start. I have started attending some local meetups where I mostly listen and try to absorb the information. In our company we are not using virtualization yet (plan to implement in 2012), therefore adoption of cloud is little bit further away.
David
At the end of your "Cloud Confusion" posting, you mentioned that a "Private Cloud" is usually based on PaaS. Could you provide some examples because I've never seen that.
Generally, I see "Private Cloud" referring to something like Eucalyptus, which is basically private IaaS, while "Software Appliances" like Google's Enterprise Search are private SaaS.
As far as I knew, the biggest disadvantage of PaaS was specifically that you couldn't run your code privately on neither Microsoft's Azure nor Google's AppEngine platforms. (That it is basically an example of vendor lock-in most developers are smart enough to stay away from.)
Editor
David, there are a few products such as Appistry providing PaaS which may be run in a private cloud (your own hardware), or even on IaaS. Obviously using the term “Usually” was overkill in anything having to do with the Cloud. There is no “Usual” as the Cloud changes from day to day.
Ian
Ben - While many businesses are rushing headlong into the cloud, there are legal implications of cloud storage of which businesses should be aware: The main concern is over the jurisdiction/s in which uploaded data resides. For example in the EU it is illegal to send certain personal data outside of the European Economic Area and a few other jurisdictions deemed to have sufficient safeguards on personal data. Trusted third party jurisdictions include Canada, Switzerland and Israel, but surprisingly, the United States is not one of the trusted jurisdictions, so choosing a cloud provider that does not restrict the storage of your data to within the EU or a trusted jurisdiction would be a big mistake for European businesses.
For a company that has data-centers spanning trusted and un-trusted boundaries, it would be prudent to seek written assurance that data would not be copied or replicated beyond trusted jurisdictions.
I should imagine that similar data protection legislation exists for other jurisdictions or is likely to in the foreseeable future, so even if your business is not in the EU, you should pay attention to legal developments affecting cloud computing in the jurisdiction/s in which you do business.
Editor
Ian. You have a very valid point regarding legal constraints. I have an United States based client who wishes to be PCI compliant. Therefore, the client may be restricted to data centers located in the United States for deployment. This definitely must be taken into account when considering any Cloud platform.
If you have input for this Cloud discussion please send it to btaylor@sswug.org.
Cheers,
Ben
Featured White Paper(s)
Optimize SharePoint Storage with BLOB Externalization
Written by AvePoint
This document is intended to provide a comprehensive an... (read more)
Featured Script
dba3_Beginners_InsertFromAnotherTable_Demo
http://www.sswug.org/forum/ShowPost.aspx?PostID=2432 get all the data from cases and insert into case_history + date and by w... (read more)
|
2/2/2012
|
Cloud Confusion
SSWUG TV
With Stephen Wynkoop
In this edition, Stephen talks about important security steps with SQL Server.
Watch the Show
Cloud Confusion
Companies are embracing the Cloud more and more each day. The reasons are compelling, yet differ with kinds of services that are available in the Cloud. To make things even more confusing, you can even have a private Cloud. Today I just wanted to talk about some of the Acronyms surrounding the Cloud to shed some light on what is going on.
IaaS – Infrastructure as a Service
IaaS is the outsourcing of hardware to a Cloud vendor such as Amazon EC2. Amazon provides you with machines and network connectivity. You are fully responsible for the Operating System and the software running on it. You perform updates, etc. Primarily, they keep the lights on.
PaaS – Platform as a Service
PaaS is outsourcing the operation of your software in machines where the Operating System is supported by the Service Provider. Azure is an example of PaaS. They allow you to increase/decrease your capacity without requiring your operations professional to manage anything other than your software.
SaaS – Software as a Service
Software as a Service provides software for you over the internet. Most of us are familiar with Google’s office like offerings. Your company does not maintain any licenses for Word Processing, etc. Instead, you rent access to the software. In this case you don’t have to maintain licenses, install software, or maintain bug/security patches.
A private Cloud is often designed using the PaaS model of software distribution, while you maintain the responsibility of maintaining the hardware.
Obviously there is a lot more to the Cloud than can be described in a few paragraphs. Feel free to send your comments regarding the Cloud and how you have used it? Drop an Email to btaylor@sswug.org.
Cheers,
Ben
Featured Article(s)
Troubleshooting SQL Server 2008 Analysis Services problems (Part 1)
In this article, Alexander Chigrik explains some problems that you can have when you work with SQL Server 2008 Analysis Services. He also tells how you can resolve these problems.
Featured White Paper(s)
All-At-Once Operations
Written by Itzik Ben-Gan with SolidQ
SQL supports a concept called all-at-onc... (read more)
|
2/1/2012
|
Accidental Programmers Unite
SSWUG TV
With Stephen Wynkoop
In this edition you'll find Eric Johnson and Stephen Wynkoop talking SSIS, and Laura Rose is back with more tips for your career.
Watch the Show
Webcast Tomorrow - Last day to register, free for Full Members!
SSRS Data-driven Subscription using SSIS
SQL Server Reporting Services provides a powerful tool to render report based on information in a database table. However, you are required to purchase an Enterprise license of SQL Server in order to use this feature.In this session, Russel Loski will create an SQL Server Integration Services (SSIS) package that renders reports to the file system based on values stored in the database
[Find out more here]
Accidental Programmers Unite
I can’t believe the number of responses I have received regarding the concept of an Accidental Programmer. There are so many I’m just picking a few of the responses at random. Please don’t feel discouraged if your response isn’t listed here…
One thing that was repeated over and over is that as an Accidental Programmer, you have the opportunity to create great business value, or great business distress. Sometimes the tools are overwhelming. Sometimes the tools are too simple, and you think you have a good product, but it won’t scale.
Regardless of how you became a programmer, it makes sense to learn good programming techniques, processes, and frameworks. This takes years…there is no way around it. However, don’t be discouraged. The best programmers are often those who know the business first, and then learn to code well.
Kurt:
I’d love to hear more on this topic. I’m an accidental programmer, except I can’t do much programming. I’m also an accidental DBA. If there are words of wisdom from another accidental programmer, I’d love to hear them!
Colleen
I am both an accidental DBA and an accidental programmer. I've got over 20 years experience as a DBA now though, so I no longer consider myself an accidental DBA.
I've been tasked with automating some of our SQL installs. The SQL install is easy (and was done years ago) but everything we do post-sql install needs to be automated in such a way that it runs with virtually no manual intervention, where all variability is programmed into the solution. This is a daunting task for an accidental programmer who has no development skills and is just learning Powershell. As DBA's, coding (t-sql) and scripting (powershell) is one thing we all need to learn, but to become a good developer takes years of practice, experience and good mentors (so critical!) It also requires a particular discipline not all DBA's posess (like error-trapping, re-using code, etc.)
In my opinion, accidental programmers are treading dangerous waters and could really use a good mentor and some formal training if they want to be successful. Not all DBA's are a good fit to become programmers and I think it's important to recognize that.
John
Luckily in the run-up to the .com crash, I was able to grow from working on IT and accounting systems, to be the sole administrator for a small .gone database consulting firm where I learned TSQL and SQL server 6.5. That led to getting a job at a local software company supporting custom business systems based around SQL Server. One of the systems I had to support was built from scratch in C++ to interface with SQL. It was absolutely a horrible experience since I didn't know anything about C++. I swore if I had to do that over again, I would learn C++ first.
I eventually had the opportunity to start working on another system that was to be written in a new language called C#. At first my goal was just to be able to read C# but progressed to writing small utilities. After years of supporting the application, I was asked if I wanted to move into the development team where I work today;
At times it is a challenge trying to keep up with all the changes. There is always something new learn. There are new technologies like Windows and SQL Azure to new development approaches to learn like functional programming.
… My experience has been to just keep plugging away at developing new skills while balancing the theoretical concepts with practice application of them. An example was trying to understand the concept of finite state machines with the practical application of parsing text with regular expressions.
Javier
Speaking of Accidental Programmers I know quite a few: why ? because of the "usefulness" of MS Access (and Shapoint sometimes). You see, some managers, directors and even owners of some companies enjoy "having fun" with MS Access (or Sharepoint or MS Excel macros). Which might be fine or not (having 150K and more-paid managers spending their time programming is their decision, right ?).
But what are the real consequences of this ? The most critical one starts on their side, developing their own systems/tools in Access because the analyst/programmers are busy with critical systems, the backend, the support, creating awful UIs (when you do not have the budget to hire designers) and .... well, wearing the hat of a DBA on top of that.
So how ends the story ? well, the Accidental Programmers realize that they suddenly do not have more time "to play around" on the Access tables and forms, and the VBA program got way too complex or tricky because they cannot keep adding features requested by users, ....and we are gently given these "systems" to now be supported and to add new features....
So what the real Senior or intermediate analyst/programmer is confronted with now ?
well, since these so called "systems" were written so poorly by these Accidental Programmers and the systems do not scale well and won't run on multiple devices, and many other problems, there is no other choice than wasting valuable time migrating them properly to C# or equivalent, on a properly built layered-architecture, and to another platform (web based mostly).
And you know why ? Well.... because all these Accidental Programmers now all have iPads or tablets (!!!) and, of course, they want their poorly made systems to run anywhere and anytime. :-)
Cheers !
Javier
Sent from my iPad=
Luis
I once had a colleague, electronic engineer, who started has a hardware support technician on on a national branch of a company. When the hardware division on that company was extinct he was reassigned to a salesman pet project who consisted in selling a software who was much like a ERP with a quite lot of different packages that must be installed, configured, and, sometimes, integrated with custom software integrations parts to do what the client wants. He learned to program and he did the job so well that it created two new positions for, this time, software developers. One was reassigned from other section and the other was the contracted my self.
Four year later, when I left the company we were responsible for the main source of income of our branch, with three new colleagues. His code was terrible, I had to re-write two or three of his integration applications, but no one could have the sort of ideas that he had. Has much of our work as integrators was implementation of communication protocols, his area of expertise fitted like a glove. I learned with him to count bytes and bits to... :)
I hope you enjoyed a view into the careers of many Accidental Programmers. As always, you can send me a note at btaylor@sswug.org
Cheers,
Ben
Featured White Paper(s)
Encryption & Key Management for Microsoft SQL Server 2008
Written by Townsend Security
Simplify encryption and key management on ... (read more)
Featured Script
Metadata get descriptions from all tables
SQL Server 2000 allows metadata to be added to table definitions - i.e. descriptions. This script gets all descriptions for... (read more)
|
1/31/2012
|
TDD Compared to TFD, New SSWUGtv Show
Interested In SQL Azure?
Last chance today to register for tomorrow's class:
[More information here]
SSWUGtv
with Stephen Wynkoop
New Show! Eric Johnson and Stephen Wynkoop on the show today talking SSIS, also the news of the week and Laura Rose is back with more tips for your career. Also, Stephen talks about important security steps with SQL Server. [Watch the Show]
Featured Article(s)
So, You Want to be a DBA? (Part 1)
So, you want to be a database administrator (DBA). You want to be in charge of the data of your company and realize that data is the lifeblood of any company.
TDD Compared to TFD
I was reading a nicely done blog by Ayobami Adewole regarding TDD. Mr Adewole did a nice job introducing TDD and unit testing. However, there was some confusion on his part regarding TDD and DFD. The only thing these two techniques have in common is the fact that they both perform unit tests.
Test First Development (TFD) is a technique for software development where tests are written prior to writing code. The tests may be written by the same person, or another developer may write tests. The key to this process is that you know the software is complete when all tests pass.
In this methodology the business requirements are often decomposed into modules, classes, method, and properties fulfilling the customer needs. UML diagramming is a common result of this kind of analysis. From these diagrams, a complete set of tests may be written validating customer requirements. All that must happen is the tests be written prior to writing the code, and code must be written completing all tests.
Test Driven Development (TDD), on the other hand works, directly from the business requirements. Developers work from the Business Requirements document rather than programming specifications such as UML diagrams.
In this case, the developer becomes the designer. Instead of designing in a CASE tool, the developer writes tests meeting a business requirement followed by code solving the tests.
For example, the developer may take a business rule that states a user may determine the precision for rounding a number using steps of precision up to .125. They may select from .125, .25, .375, .5 etc.
The developer will first write a test to perform this rounding by precision. Then they write a method solving the problem. At this point, when all the necessary tests have been written, they move on to the next requirement.
What happens using this technique is that the way the classes are designed, and the module layout will change, sometimes dramatically, throughout the process. This is much the same as what happens when you build UML diagrams. You find that there are better ways to layout your code. You might think this is inefficient because you will find yourself refactoring considerably. However, the efficiency is generally not any less than refactoring an UML diagram. In fact, it works more efficiently because the code is actually exercised through the tests providing a greater confidence in the ultimate design.
The real cost benefit is exercised due to finding errors in requirements and softare much earlier in the development lifecycle, resulting in highly reduced cost in writing software.
I guess you can see how passionate I am personally about software testing. I have so many war stories about tests saving time, or lack of tests resulting in expensive errors. So, I’ll put on my thick skin, and ask you to send me your thoughts, concerns, or experiences with testing in Email to btaylor@sswug.org.
Cheers,
Ben
Featured Article(s)
So, You Want to be a DBA? (Part 1)
So, you want to be a database administrator (DBA). You want to be in charge of the data of your company and realize that data is the lifeblood of any company.
Featured White Paper(s)
Office 365 SharePoint Online - what does it mean to my organization as a CIO?
Written by AvePoint
The goal of this white paper is to clarify the disjoint... (read more)
|
1/30/2012
|
Accidental Programmer
SSWUG TV
With Stephen Wynkoop and Sam Brace
Watch this edition for interviews with DotCloud's CEO Solomon Hykes and IT Career Coach Laura Rose.
Catch the Show
Accidental Programmer
One of our favorite topics here at SSWUG is the issues facing the Accidental DBA. This is the person who, for one reason or another, ends up supporting and sometimes developing a relational database engine, with limited or no formal training. Oftenm the Accidental DBA started out as a developers having to cover the database role because the company is too small, or technical people are not available.
I’m curious if there is a counterpart to the Accidental DBA I’d like to call the Accidental Programmer. This might be a person who is a business analyst, or a subject matter expert in a department, unable to get technical resources to help them solve a problem. Therefore, they roll up their sleeves, do some research, and do their best to write software to solve their problem.
I'm just curious, how many of you got into software development as an Accidental Programmer? Maybe you were working in an operations area writing tools to optimize your job and found your preferred programming instead? Maybe you’re going through the process today?
Why not send me an email at btaylor@sswug.org and share your story? Or, better yet, if there really is an Accidental Programmer, why not share some tips for becoming a better programmer? There’s nothing like being in the trenches.
Cheers,
Ben
Featured Article(s)
Alternate Access Mappings in Your SharePoint Farm
Daniel Galant clears up a bit of the confusion surrounding Alternate Access Mappings to give you a better understanding of their place in your SharePoint farm.
Featured White Paper(s)
All-At-Once Operations
Written by Itzik Ben-Gan with SolidQ
SQL supports a concept called all-at-onc... (read more)
|
1/27/2012
|
|