Microsoft Training Classes in Raleigh, North Carolina

Learn Microsoft in Raleigh, NorthCarolina and surrounding areas via our hands-on, expert led courses. All of our classes either are offered on an onsite, online or public instructor led basis. Here is a list of our current Microsoft related training offerings in Raleigh, North Carolina: Microsoft Training

We offer private customized training for groups of 3 or more attendees.

Microsoft Training Catalog

Microsoft Development Classes

cost: $ 1685length: 4 day(s)

Course Directory [training on all levels]

Upcoming Classes
Gain insight and ideas from students with different perspectives and experiences.

Blog Entries publications that: entertain, make you think, offer insight

This section of our beginning python training class always stumps students.  Firstly, because they need to know the difference between a function and a method.  Secondly, they need to understand object oriented programming concepts.  Thirdly, they need to realize that python has three types of methods.  Then they need to know how to use each method, which means they need to know the purpose of each method type.  Then they have to understand mutable versus non-mutable types.  The list goes on.  As part of our python tutorial, I hope to shed some light on this confusing topic.

To begin, the difference between a function and a method in python is that a method is defined within a class.  Here is an illustration:

#function

	def greeting():
	                print "Hello, I hope you're having a great day!"

	class HSGPrinter(object):
	                #method
	                def greeting(self): 
	                                print "Hello, I hope you're having a great day!"

As should be obvious, the second definition of greeting is encapsulated within the HSGPrinter class and is , therefore, refered to as a method.

The astute reader will notice that the greeting method contains one parameter named self.  For those who know C++ , Java or C#, self is equivalent to this i.e. it is a reference to the invoking object:

data dictionary workThe mainstay of a corporation is the data that it possesses. By data, I mean its customer base, information about the use of its products, employee roles and responsibilities, the development and maintenance of its product lines, demographics of supporters and naysayers, financial records, projected sales ... It is in the organization of this data that advancements to the bottom line are often realized i.e. the nuggets of gold are found. Defining what is important, properly cataloging the information, developing a comprehensive protocol to access and update this information and discerning how this data fits into the corporate venacular is basis of this data organization and may be the difference between moving ahead of the competition or being the one to fall behind.

Whenever we attempt to develop an Enterprise Rule Application, we must begin by harvesting the data upon which those rules are built. This is by no means an easy feat as it requires a thorough understanding of the business, industry, the players and their respective roles and the intent of the application. Depending upon the scope of this undertaking, it is almost always safe to say that no one individual is completely knowledgeable to all facets needed to comprise the entire application.data dictionary

The intial stage of this endeavor is, obviously, to decide upon the intent of the application. This requires knowledge of what is essential, what is an add-on and which of all these requirements/options can be successfully implemented in the allotted period of time. The importance of this stage cannot be stressed enough; if the vision/goal cannot be articulated in a manner that all can understand, the knowledge tap will be opened to become the money drain. Different departments may compete for the same financial resources; management may be jockeying for their day in the sun; consulting corporations, eager to win the bid, may exaggerate their level of competency. These types of endeavors require those special skills of an individual or a team of very competent members to be/have a software architect, subject matter expert and business analyst.

Once the decision has been made and the application development stages have been defined, the next step is to determine which software development tools to employ. For the sake of this article, we will assume that the team has chosen an object oriented language such as Java and a variety of J EE components, a relationsional database and a vendor specific BRMS such as Blaze Advisor. Now, onto the point of this article.

It is said that spoken languages shape thoughts by their inclusion and exclusion of concepts, and by structuring them in different ways. Similarly, programming languages shape solutions by making some tasks easier and others less aesthetic. Using F# instead of C# reshapes software projects in ways that prefer certain development styles and outcomes, changing what is possible and how it is achieved.

F# is a functional language from Microsoft's research division. While once relegated to the land of impractical academia, the principles espoused by functional programming are beginning to garner mainstream appeal.

As its name implies, functions are first-class citizens in functional programming. Blocks of code can be stored in variables, passed to other functions, and infinitely composed into higher-order functions, encouraging cleaner abstractions and easier testing. While it has long been possible to store and pass code, F#'s clean syntax for higher-order functions encourages them as a solution to any problem seeking an abstraction.

F# also encourages immutability. Instead of maintaining state in variables, functional programming with F# models programs as a series of functions converting inputs to outputs. While this introduces complications for those used to imperative styles, the benefits of immutability mesh well with many current developments best practices.

For instance, if functions are pure, handling only immutable data and exhibiting no side effects, then testing is vastly simplified. It is very easy to test that a specific block of code always returns the same value given the same inputs, and by modeling code as a series of immutable functions, it becomes possible to gain a deep and highly precise set of guarantees that software will behave exactly as written.

Further, if execution flow is exclusively a matter of routing function inputs to outputs, then concurrency is vastly simplified. By shifting away from mutable state to immutable functions, the need for locks and semaphores is vastly reduced if not entirely eliminated, and multi-processor development is almost effortless in many cases.

Type inference is another powerful feature of many functional languages. It is often unnecessary to specify argument and return types, since any modern compiler can infer them automatically. F# brings this feature to most areas of the language, making F# feel less like a statically-typed language and more like Ruby or Python. F# also eliminates noise like braces, explicit returns, and other bits of ceremony that make languages feel cumbersome.

Functional programming with F# makes it possible to write concise, easily testable code that is simpler to parallelize and reason about. However, strict functional styles often require imperative developers to learn new ways of thinking that are not as intuitive. Fortunately, F# makes it possible to incrementally change habits over time. Thanks to its hybrid object-oriented and functional nature, and its clean interoperability with the .net platform, F# developers can gradually shift to a more functional mindset while still using the algorithms and libraries with which they are most familiar.

 

Related F# Resources:

F# Programming Essentials Training

Technology is wonderful. It helps us run our businesses and connects us to the world. But when computer problems get in the way of getting what you need to get done, you can go from easygoing to mad-as-a-hornet in 3 seconds flat. Before you panic or give in to the temptation to throw your computer out the window, try these easy fixes.

5 Common Computer Problems

  1. Sluggish PC

A sluggish PC often means low disk space caused by an accumulation of temporary Internet files, photos, music, and downloads. One of the easiest fixes for a slow PC is to clear your cache.

The way you’ll do this will depend on the Internet browser you use:

  • Chrome– On the top right-hand side of the screen, you’ll see what looks like a window blind. Click on that. Click on ‘History’ and hit ‘Clear Browsing Data’.
  • Safari– On the upper left-hand side, you’ll see a tab marked ‘Safari’. Click on that. Scroll down and hit ‘Empty Cache’.
  • Internet Explorer– Click on ‘Tools’ and scroll down to ‘Internet Options’. Under ‘Browsing History’ click ‘Delete’. Delete files and cookies.
  • FireFox – At the top of the window click ‘Tools’ then go to ‘Options’. Select the ‘Advanced’ panel and click on the ‘Network’ tab. Go to ‘Cached Web Content’ and hit ‘Clear Now’.

Tech Life in North Carolina

The University of North Carolina Chapel Hill is the oldest State University in the United States. There are significant “firsts” in this state one being, the first state to own an art museum and second was to vote in the first African-American member, Hiram Rhoades Revels, into the United States Congress. Higher education is a given with a total of 2,425 public schools in the state, including 99 charter schools.
Whoever ceases to be a student has never been a student. George Iles
other Learning Options
Software developers near Raleigh have ample opportunities to meet like minded techie individuals, collaborate and expend their career choices by participating in Meet-Up Groups. The following is a list of Technology Groups in the area.
Fortune 500 and 1000 companies in North Carolina that offer opportunities for Microsoft developers
Company Name City Industry Secondary Industry
Branch Banking and Trust / BBandT Winston Salem Financial Services Banks
UTC Aerospace Systems Charlotte Manufacturing Aerospace and Defense
R.J. Reynolds Tobacco Company Winston Salem Manufacturing Manufacturing Other
Family Dollar Stores, Inc. Matthews Retail Department Stores
Duke Energy Corporation Charlotte Energy and Utilities Gas and Electric Utilities
Lowe's Companies, Inc. Mooresville Retail Hardware and Building Material Dealers
Nucor Corporation Charlotte Manufacturing Metals Manufacturing
VF Corporation Greensboro Manufacturing Textiles, Apparel and Accessories
Bank of America Charlotte Financial Services Banks
Laboratory Corporation of America Burlington Healthcare, Pharmaceuticals and Biotech Diagnostic Laboratories
Sonic Automotive, Inc. Charlotte Retail Automobile Dealers
SPX Corporation Charlotte Manufacturing Tools, Hardware and Light Machinery
The Pantry, Inc. Cary Retail Gasoline Stations

training details locations, tags and why hsg

A successful career as a software developer or other IT professional requires a solid understanding of software development processes, design patterns, enterprise application architectures, web services, security, networking and much more. The progression from novice to expert can be a daunting endeavor; this is especially true when traversing the learning curve without expert guidance. A common experience is that too much time and money is wasted on a career plan or application due to misinformation.

The Hartmann Software Group understands these issues and addresses them and others during any training engagement. Although no IT educational institution can guarantee career or application development success, HSG can get you closer to your goals at a far faster rate than self paced learning and, arguably, than the competition. Here are the reasons why we are so successful at teaching:

  • Learn from the experts.
    1. We have provided software development and other IT related training to many major corporations in North Carolina since 2002.
    2. Our educators have years of consulting and training experience; moreover, we require each trainer to have cross-discipline expertise i.e. be Java and .NET experts so that you get a broad understanding of how industry wide experts work and think.
  • Discover tips and tricks about Microsoft programming
  • Get your questions answered by easy to follow, organized Microsoft experts
  • Get up to speed with vital Microsoft programming tools
  • Save on travel expenses by learning right from your desk or home office. Enroll in an online instructor led class. Nearly all of our classes are offered in this way.
  • Prepare to hit the ground running for a new job or a new position
  • See the big picture and have the instructor fill in the gaps
  • We teach with sophisticated learning tools and provide excellent supporting course material
  • Books and course material are provided in advance
  • Get a book of your choice from the HSG Store as a gift from us when you register for a class
  • Gain a lot of practical skills in a short amount of time
  • We teach what we know…software
  • We care…
learn more
page tags
what brought you to visit us
Raleigh, North Carolina Microsoft Training , Raleigh, North Carolina Microsoft Training Classes, Raleigh, North Carolina Microsoft Training Courses, Raleigh, North Carolina Microsoft Training Course, Raleigh, North Carolina Microsoft Training Seminar

Interesting Reads Take a class with us and receive a book of your choosing for 50% off MSRP.