C# Programming Training Classes in Plymouth, Minnesota

Learn C# Programming in Plymouth, Minnesota 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 C# Programming related training offerings in Plymouth, Minnesota: C# Programming Training

We offer private customized training for groups of 3 or more attendees.
Plymouth  Upcoming Instructor Led Online and Public C# Programming Training Classes
Object-Oriented Programming in C# Rev. 6.1 Training/Class 15 September, 2025 - 19 September, 2025 $2090
HSG Training Center instructor led online
Plymouth, Minnesota 02330
Hartmann Software Group Training Registration

C# Programming Training Catalog

cost: $ 1190length: 3 day(s)
cost: $ 2090length: 5 day(s)
cost: $ 2090length: 5 day(s)
cost: $ 2090length: 5 day(s)
cost: $ 1190length: 3 day(s)
cost: $ 890length: 2 day(s)
cost: $ 890length: 2 day(s)
cost: $ 1090length: 3 day(s)
cost: $ 790length: 2 day(s)
cost: $ 990length: 2 day(s)
cost: $ 2090length: 5 day(s)

Microsoft Development Classes

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

 

Over time, companies are migrating from COBOL to the latest standard of C# solutions due to reasons such as cumbersome deployment processes, scarcity of trained developers, platform dependencies, increasing maintenance fees. Whether a company wants to migrate to reporting applications, operational infrastructure, or management support systems, shifting from COBOL to C# solutions can be time-consuming and highly risky, expensive, and complicated. However, the following four techniques can help companies reduce the complexity and risk around their modernization efforts. 

All COBOL to C# Solutions are Equal 

It can be daunting for a company to sift through a set of sophisticated services and tools on the market to boost their modernization efforts. Manual modernization solutions often turn into an endless nightmare while the automated ones are saturated with solutions that generate codes that are impossible to maintain and extend once the migration is over. However, your IT department can still work with tools and services and create code that is easier to manage if it wants to capitalize on technologies such as DevOps. 

Narrow the Focus 

Most legacy systems are incompatible with newer systems. For years now, companies have passed legacy systems to one another without considering functional relationships and proper documentation features. However, a detailed analysis of databases and legacy systems can be useful in decision-making and risk mitigation in any modernization effort. It is fairly common for companies to uncover a lot of unused and dead code when they analyze their legacy inventory carefully. Those discoveries, however can help reduce the cost involved in project implementation and the scope of COBOL to C# modernization. Research has revealed that legacy inventory analysis can result in a 40% reduction of modernization risk. Besides making the modernization effort less complex, trimming unused and dead codes and cost reduction, companies can gain a lot more from analyzing these systems. 

Understand Thyself 

For most companies, the legacy system entails an entanglement of intertwined code developed by former employees who long ago left the organization. The developers could apply any standards and left behind little documentation, and this made it extremely risky for a company to migrate from a COBOL to C# solution. In 2013, CIOs teamed up with other IT stakeholders in the insurance industry in the U.S to conduct a study that found that only 18% of COBOL to C# modernization projects complete within the scheduled period. Further research revealed that poor legacy application understanding was the primary reason projects could not end as expected. 

Furthermore, using the accuracy of the legacy system for planning and poor understanding of the breadth of the influence of the company rules and policies within the legacy system are some of the risks associated with migrating from COBOL to C# solutions. The way an organization understands the source environment could also impact the ability to plan and implement a modernization project successfully. However, accurate, in-depth knowledge about the source environment can help reduce the chances of cost overrun since workers understand the internal operations in the migration project. That way, companies can understand how time and scope impact the efforts required to implement a plan successfully. 

Use of Sequential Files 

Companies often use sequential files as an intermediary when migrating from COBOL to C# solution to save data. Alternatively, sequential files can be used for report generation or communication with other programs. However, software mining doesn’t migrate these files to SQL tables; instead, it maintains them on file systems. Companies can use data generated on the COBOL system to continue to communicate with the rest of the system at no risk. Sequential files also facilitate a secure migration path to advanced standards such as MS Excel. 

Modern systems offer companies a range of portfolio analysis that allows for narrowing down their scope of legacy application migration. Organizations may also capitalize on it to shed light on migration rules hidden in the ancient legacy environment. COBOL to C# modernization solution uses an extensible and fully maintainable code base to develop functional equivalent target application. Migration from COBOL solution to C# applications involves language translation, analysis of all artifacts required for modernization, system acceptance testing, and database and data transfer. While it’s optional, companies could need improvements such as coding improvements, SOA integration, clean up, screen redesign, and cloud deployment.

Java still has its place in the world of software development, but is it quickly becoming obsolete by the more dynamically enabled Python programming language? The issue is hotly contested by both sides of the debate. Java experts point out that Java is still being developed with more programmer friendly updates. Python users swear that Java can take up to ten times longer to develop. Managers that need to make the best decision for a company need concrete information so that an informed and rational decision can be made.

First, Java is a static typed language while Python is dynamically typed. Static typed languages require that each variable name must be tied to both a type and an object. Dynamically typed languages only require that a variable name only gets bound to an object. Immediately, this puts Python ahead of the game in terms of productivity since a static typed language requires several elements and can make errors in coding more likely.

Python uses a concise language while Java uses verbose language. Concise language, as the name suggests, gets straight to the point without extra words. Removing additional syntax can greatly reduce the amount of time required to program.  A simple call in Java, such as the ever notorious "Hello, World" requires three several lines of coding while Python requires a single sentence. Java requires the use of checked exceptions. If the exceptions are not caught or thrown out then the code fails to compile. In terms of language, Python certainly has surpassed Java in terms of brevity.

Additionally, while Java's string handling capabilities have improved they haven't yet matched the sophistication of Python's. Web applications rely upon fast load times and extraneous code can increase user wait time. Python optimizes code in ways that Java doesn't, and this can make Python a more efficient language. However, Java does run faster than Python and this can be a significant advantage for programmers using Java. When you factor in the need for a compiler for Java applications the speed factor cancels itself out leaving Python and Java at an impasse.

While a programmer will continue to argue for the language that makes it easiest based on the programmer's current level of knowledge, new software compiled with Python takes less time and provides a simplified coding language that reduces the chance for errors. When things go right, Java works well and there are no problems. However, when errors get introduced into the code, it can become extremely time consuming to locate and correct those errors. Python generally uses less code to begin with and makes it easier and more efficient to work with.

Ultimately, both languages have their own strengths and weaknesses. For creating simple applications, Python provides a simpler and more effective application. Larger applications can benefit from Java and the verbosity of the code actually makes it more compatible with future versions. Python code has been known to break with new releases. Ultimately, Python works best as a type of connecting language to conduct quick and dirty work that would be too intensive when using Java alone. In this sense, Java is a low-level implementation language. While both languages are continuing to develop, it's unlikely that one language will surpass the other for all programming needs in the near future.

Controversy was recently courted as Southern California Edison (SCE) prepares to cut their own staff while looking to meet their staffing needs with offshore employees skilled in the field of “IT” or Informational Technology. This has been the second major utility company in the United States to take this path towards providing services to its consumers while holding current rates at consistent levels. SCE does not disclose the exact numbers of expected lay-offs, but the LA Times reports that it is in the hundreds.  Utility companies tell their consumers that these moves are necessary as a hedge against inflation and to keep their services at rates that their customers can easily afford. Critics claim that the use of foreign workers is the first step to using an entirely foreign workforce and promoting large scale unemployment amongst American citizens. Often this has been seen as a conflict between national and international workers for the same jobs, salaries and careers.

It has been noted that this State of California utility company, much like other corporations that hire foreign workers does so primarily when there is a shortage of national citizens that can perform these jobs well. IT workers that are brought in with H-1B Visa work permits usually are college educated and hold expertise in technical areas and studies that local employees may not be especially trained in. Once again, critics decry the fact that these employees are not hired directly. On shore contracting companies operating in the continental United States are directly hired by the utility companies. These contracted companies then serve as “middle-men” and hire a wide range of foreign workers with H-1B paperwork so that they can move to the United States. The workers then perform a variety of jobs instead of American workers who were either born in the country or have achieved American citizenship on their own.

Needless to say, the amount of visas issued in a given year is a concern for U.S workers in various fields but particularly in Information Technology. As large corporations stack the employment deck with foreign workers who put in the hours for a fraction of the pay-rate for local employees, local IT professionals are finding it more difficult to find work nationally.  They encounter rejections, endless interview processes or low –ball offers from companies and recruiting agencies looking to fill positions at a bare minimum cost for coveted skill-sets.  


Meanwhile, an H-1B worker is a worker brought in on a temporary basis with a visa allowing them to work freely in the United States. Much like a student or travel visa, it is issued for on a calendar oriented basis.  Applicants who successfully renew the visa for an extended period of time can expect to work in the United States for up to ten years.  Although U.S companies hiring these employees may pay them less than their local employees, the salaries earned by H-1B Visa workers are almost always higher than these workers would earn in their own country of origin.

Both sides can agree on several issues. When it comes to these H-1B Visa workers, their assignments are generally of a contractual nature and require them to reside in this country for a period of months to years. However it is also an accepted fact that while they are in this country, they are responsible for paying rent, utilities and all other living expenses. As residents of the United States on a permanent basis, they are also liable for taxes on any salary they have earned while living here.

Dr. Norman Matloff, a professor at the University of California, Davis and writer on political matters believes the shortage to be fiction. In his writing for the University of Michigan Journal of Law Reform, he claims that “there has been no shortage of qualified American citizens to fill American computer-related jobs, and that the data offered as evidence of American corporations needing H-1B visas to address labor shortages was erroneous. The American Immigration Lawyers Association (AILA) agrees with him and describes the situation as a crisis. Likewise, other studies from Duke, Alfred P. Sloan Foundation and Georgetown University have disputed that in some years, the number of foreign programmers and engineers imported outnumbered the number of jobs created by the industry

In programming, memory leaks are a common issue, and it occurs when a computer uses memory but does not give it back to the operating system. Experienced programmers have the ability to diagnose a leak based on the symptoms. Some believe every undesired increase in memory usage is a memory leak, but this is not an accurate representation of a leak. Certain leaks only run for a short time and are virtually undetectable.

Memory Leak Consequences

Applications that suffer severe memory leaks will eventually exceed the memory resulting in a severe slowdown or a termination of the application.

How to Protect Code from Memory Leaks?

Preventing memory leaks in the first place is more convenient than trying to locate the leak later. To do this, you can use defensive programming techniques such as smart pointers for C++.  A smart pointer is safer than a raw pointer because it provides augmented behavior that raw pointers do not have. This includes garbage collection and checking for nulls.

If you are going to use a raw pointer, avoid operations that are dangerous for specific contexts. This means pointer arithmetic and pointer copying. Smart pointers use a reference count for the object being referred to. Once the reference count reaches zero, the excess goes into garbage collection. The most commonly used smart pointer is shared_ptr from the TR1 extensions of the C++ standard library.

Static Analysis

The second approach to memory leaks is referred to as static analysis and attempts to detect errors in your source-code. CodeSonar is one of the effective tools for detection. It provides checkers for the Power of Ten coding rules, and it is especially competent at procedural analysis. However, some might find it lagging for bigger code bases.

How to Handle a Memory Leak

For some memory leaks, the only solution is to read through the code to find and correct the error. Another one of the common approaches to C++ is to use RAII, which an acronym for Resource Acquisition Is Initialization. This approach means associating scoped objects using the acquired resources, which automatically releases the resources when the objects are no longer within scope. RAII has the advantage of knowing when objects exist and when they do not. This gives it a distinct advantage over garbage collection. Regardless, RAII is not always recommended because some situations require ordinary pointers to manage raw memory and increase performance. Use it with caution.

The Most Serious Leaks

Urgency of a leak depends on the situation, and where the leak has occurred in the operating system. Additionally, it becomes more urgent if the leak occurs where the memory is limited such as in embedded systems and portable devices.

To protect code from memory leaks, people have to stay vigilant and avoid codes that could result in a leak. Memory leaks continue until someone turns the system off, which makes the memory available again, but the slow process of a leak can eventually prejudice a machine that normally runs correctly.

 

Related:

The Five Principles of Performance

In Demand IT Skills

Tech Life in Minnesota

Minnesota is one of the healthiest states, and has a highly rate of literacy. The state supports a network of public universities and colleges. It encompasses thirty two institutions in the Minnesota State Colleges and Universities System, as well as five major campuses of the University of Minnesota. According to U.S. News & World Report six of the private colleges rank among the nation's top 100 in liberal arts.
Leadership and learning are indispensable to each other. John F. Kennedy
other Learning Options
Software developers near Plymouth 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 Minnesota that offer opportunities for C# Programming developers
Company Name City Industry Secondary Industry
The Affluent Traveler Saint Paul Travel, Recreation and Leisure Travel, Recreation, and Leisure Other
Xcel Energy Inc. Minneapolis Energy and Utilities Gas and Electric Utilities
Thrivent Financial for Lutherans Minneapolis Financial Services Personal Financial Planning and Private Banking
CHS Inc. Inver Grove Heights Agriculture and Mining Agriculture and Mining Other
Hormel Foods Corporation Austin Manufacturing Food and Dairy Product Manufacturing and Packaging
St. Jude Medical, Inc. Saint Paul Healthcare, Pharmaceuticals and Biotech Medical Devices
The Mosaic Company Minneapolis Agriculture and Mining Mining and Quarrying
Ecolab Inc. Saint Paul Manufacturing Chemicals and Petrochemicals
Donaldson Company, Inc. Minneapolis Manufacturing Tools, Hardware and Light Machinery
Michael Foods, Inc. Minnetonka Manufacturing Food and Dairy Product Manufacturing and Packaging
Regis Corporation Minneapolis Retail Retail Other
Fastenal Company Winona Wholesale and Distribution Wholesale and Distribution Other
Securian Financial Saint Paul Financial Services Insurance and Risk Management
UnitedHealth Group Minnetonka Financial Services Insurance and Risk Management
The Travelers Companies, Inc. Saint Paul Financial Services Insurance and Risk Management
Imation Corp. Saint Paul Computers and Electronics Networking Equipment and Systems
C.H. Robinson Worldwide, Inc. Eden Prairie Transportation and Storage Warehousing and Storage
Ameriprise Financial, Inc. Minneapolis Financial Services Securities Agents and Brokers
Best Buy Co. Inc. Minneapolis Retail Retail Other
Nash Finch Company Minneapolis Wholesale and Distribution Grocery and Food Wholesalers
Medtronic, Inc. Minneapolis Healthcare, Pharmaceuticals and Biotech Medical Devices
LAND O'LAKES, INC. Saint Paul Manufacturing Food and Dairy Product Manufacturing and Packaging
General Mills, Inc. Minneapolis Manufacturing Food and Dairy Product Manufacturing and Packaging
Pentair, Inc. Minneapolis Manufacturing Manufacturing Other
Supervalu Inc. Eden Prairie Retail Grocery and Specialty Food Stores
U.S. Bancorp Minneapolis Financial Services Banks
Target Corporation, Inc. Minneapolis Retail Department Stores
3M Company Saint Paul Manufacturing Chemicals and Petrochemicals

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 Minnesota 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 C# Programming programming
  • Get your questions answered by easy to follow, organized C# Programming experts
  • Get up to speed with vital C# Programming 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
Plymouth, Minnesota C# Programming Training , Plymouth, Minnesota C# Programming Training Classes, Plymouth, Minnesota C# Programming Training Courses, Plymouth, Minnesota C# Programming Training Course, Plymouth, Minnesota C# Programming Training Seminar

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