XML Training Classes in Dearborn Heights, Michigan
Learn XML in Dearborn Heights, Michigan 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 XML related training offerings in Dearborn Heights, Michigan: XML Training
XML Training Catalog
Course Directory [training on all levels]
- .NET Classes
- Agile/Scrum Classes
- AI Classes
- Ajax Classes
- Android and iPhone Programming Classes
- Azure Classes
- Blaze Advisor Classes
- C Programming Classes
- C# Programming Classes
- C++ Programming Classes
- Cisco Classes
- Cloud Classes
- CompTIA Classes
- Crystal Reports Classes
- Data Classes
- Design Patterns Classes
- DevOps Classes
- Foundations of Web Design & Web Authoring Classes
- Git, Jira, Wicket, Gradle, Tableau Classes
- IBM Classes
- Java Programming Classes
- JBoss Administration Classes
- JUnit, TDD, CPTC, Web Penetration Classes
- Linux Unix Classes
- Machine Learning Classes
- Microsoft Classes
- Microsoft Development Classes
- Microsoft SQL Server Classes
- Microsoft Team Foundation Server Classes
- Microsoft Windows Server Classes
- Oracle, MySQL, Cassandra, Hadoop Database Classes
- Perl Programming Classes
- Python Programming Classes
- Ruby Programming Classes
- SAS Classes
- Security Classes
- SharePoint Classes
- SOA Classes
- Tcl, Awk, Bash, Shell Classes
- UML Classes
- VMWare Classes
- Web Development Classes
- Web Services Classes
- Weblogic Administration Classes
- XML Classes
- Introduction to Spring 6, Spring Boot 3, and Spring REST
15 December, 2025 - 19 December, 2025 - RED HAT ENTERPRISE LINUX SYSTEMS ADMIN II
8 December, 2025 - 11 December, 2025 - Python for Scientists
8 December, 2025 - 12 December, 2025 - Fast Track to Java 17 and OO Development
8 December, 2025 - 12 December, 2025 - See our complete public course listing
Blog Entries publications that: entertain, make you think, offer insight
I remember the day like it was yesterday. Pac Man had finally arrived on the Atari 2600. It was a clear and sunny day, but it was slightly brisk. My dad drove us down to the video store about three miles from our Michigan house. If I remember correctly, the price for the game was $24.99. It was quite expensive for the day, probably equaling a $70 game in today’s market, but it was mine. There *was* no question about it. If you purchase a game, it’s your game… right?
You couldn’t be more wrong. With all the licensing agreements in games today, you only purchase the right to play it. You don’t actually “own” the game.
Today, game designers want total control over the money that comes in for a game. They add in clauses that keep the game from being resold, rented, borrowed, copied, etc. All of the content in the game, including the items you find that are specifically for you, are owned by the software developer. Why, you ask, do they do this? It’s all about the money.
This need for greed started years ago, when people started modifying current games on the market. One of the first games like this was Doom. There were so many third part mods made, but because of licensing agreement, none of these versions were available for resale. The end user, or you, had to purchase Doom before they could even install the mod. None of these “modders” were allowed to make any money off their creation.
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:
HP is taking legal action against Oracle for allegedly breaching its 2010 partnership agreement of porting HP’s core software products with the latest versions of Itanium. In March, Oracle announced it would not be developing any new versions for products designed for the Itanium processor. Itanium has the ability to power the so-called Business Critical Systems hardware for extremely demanding enterprise applications. However, Oracle said the chip line is about to die.
The companies’ lawyer met in the Santa Clara County Superior Court with Judge James Kleinberg presiding to discuss their side of the event. Others in the courtroom included Ann Livermore, HP board member and former enterprise business chief, and Oracle’s co-President Safra Catz. Catz and Livermore were the two key negotiators for the agreement. Livermore was to testify later in the day. Kleinberg is set to rule if the companies had a legally binding contract.
Jeff Thomas, HP’s lawyer, focused on the so-called Hurd Agreement wording, where the companies reiterated their partnership after Oracle hired Mark Hurd, former CEO for HP. HP also sued Hurd for breaking the confidentiality agreement.
Thomas and the lead lawyer for Oracle focused on one paragraph of the agreement, which read Oracle would continue to provide its product suite on the HP platform in a way that’s consistent with the existing partnership before Hurd’s hiring.
I suspect that many of you are familiar with the term "hard coding a value" whereby the age of an individual or their location is written into the condition (or action) of a business rule (in this case) as shown below:
if customer.age > 21 and customer.city == 'denver'
then ...
Such coding practices are perfectly expectable provided that the conditional values, age and city, never change. They become entirely unacceptable if a need for different values could be anticipated. A classic example of where this practice occurred that caused considerable heartache in the IT industry was the Y2K issue where dates were updated using only the last 2 digits of a four digit number because the first 2 digits were hard-coded to 19 i.e. 1998, 1999. All was well provided that the date did not advance to a time beyond the 1900’s since no one could be certain of what would happen when the millennia arrived (2000). A considerably amount of work (albeit boring) and money, approximately $200 billion, went into revising systems by way of software rewrites and computer chip replacements in order to thwart any detrimental outcomes. It is obvious how a simple change or an assumption can have sweeping consequences.
You may wonder what Y2K has to do with Business Rule Management Systems (BRMS). Well, what if we considered rules themselves to be hard-coded. If we were to write 100s of rules in Java, .NET or whatever language that only worked for a given scenario or assumption, would that not constitute hard-coded logic? By hard-coded, we obviously mean compiled. For example, if a credit card company has a variety of bonus campaigns, each with their own unique list of rules that may change within a week’s time, what would be the most effective way of writing software to deal with these responsibilities?
Tech Life in Michigan
| Company Name | City | Industry | Secondary Industry |
|---|---|---|---|
| Lear Corporation | Southfield | Manufacturing | Automobiles, Boats and Motor Vehicles |
| TRW Automotive Holdings Corp. | Livonia | Manufacturing | Automobiles, Boats and Motor Vehicles |
| Spartan Stores, Inc. | Byron Center | Retail | Grocery and Specialty Food Stores |
| Steelcase Inc. | Grand Rapids | Manufacturing | Furniture Manufacturing |
| Valassis Communications, Inc. | Livonia | Business Services | Advertising, Marketing and PR |
| Autoliv, Inc. | Auburn Hills | Manufacturing | Automobiles, Boats and Motor Vehicles |
| Cooper-Standard Automotive Group | Novi | Manufacturing | Automobiles, Boats and Motor Vehicles |
| Penske Automotive Group, Inc. | Bloomfield Hills | Retail | Automobile Dealers |
| Con-Way Inc. | Ann Arbor | Transportation and Storage | Freight Hauling (Rail and Truck) |
| Meritor, Inc. | Troy | Manufacturing | Automobiles, Boats and Motor Vehicles |
| Visteon Corporation | Van Buren Twp | Manufacturing | Automobiles, Boats and Motor Vehicles |
| Affinia Group, Inc. | Ann Arbor | Manufacturing | Automobiles, Boats and Motor Vehicles |
| Perrigo Company | Allegan | Healthcare, Pharmaceuticals and Biotech | Pharmaceuticals |
| BorgWarner Inc. | Auburn Hills | Manufacturing | Automobiles, Boats and Motor Vehicles |
| Auto-Owners Insurance | Lansing | Financial Services | Insurance and Risk Management |
| DTE Energy Company | Detroit | Energy and Utilities | Gas and Electric Utilities |
| Whirlpool Corporation | Benton Harbor | Manufacturing | Tools, Hardware and Light Machinery |
| Herman Miller, Inc. | Zeeland | Manufacturing | Furniture Manufacturing |
| Universal Forest Products | Grand Rapids | Manufacturing | Furniture Manufacturing |
| Masco Corporation Inc. | Taylor | Manufacturing | Concrete, Glass, and Building Materials |
| PULTEGROUP, INC. | Bloomfield Hills | Real Estate and Construction | Real Estate & Construction Other |
| CMS Energy Corporation | Jackson | Energy and Utilities | Energy and Utilities Other |
| Stryker Corporation | Portage | Healthcare, Pharmaceuticals and Biotech | Medical Devices |
| General Motors Company (GM) | Detroit | Manufacturing | Automobiles, Boats and Motor Vehicles |
| Kellogg Company | Battle Creek | Manufacturing | Food and Dairy Product Manufacturing and Packaging |
| The Dow Chemical Company | Midland | Manufacturing | Chemicals and Petrochemicals |
| Kelly Services, Inc. | Troy | Business Services | HR and Recruiting Services |
| Ford Motor Company | Dearborn | Manufacturing | Automobiles, Boats and Motor Vehicles |
training details locations, tags and why hsg
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.
- We have provided software development and other IT related training to many major corporations in Michigan since 2002.
- 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 XML programming
- Get your questions answered by easy to follow, organized XML experts
- Get up to speed with vital XML 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…














