Cloud Training Classes in Hampton, Virginia
Learn Cloud in Hampton, Virginia 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 Cloud related training offerings in Hampton, Virginia: Cloud Training
Cloud Training Catalog
AWS Classes
Linux Unix Classes
Microsoft Development Classes
Course Directory [training on all levels]
- .NET Classes
- Agile/Scrum Classes
- AI Classes
- Ajax Classes
- Android and iPhone Programming Classes
- Blaze Advisor Classes
- C Programming Classes
- C# Programming Classes
- C++ Programming Classes
- Cisco Classes
- Cloud Classes
- CompTIA Classes
- Crystal Reports 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
- 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
- ASP.NET Core MVC (VS2022)
10 March, 2025 - 11 March, 2025 - Object-Oriented Programming in C# Rev. 6.1
14 April, 2025 - 18 April, 2025 - OpenShift Fundamentals
28 April, 2025 - 30 April, 2025 - RED HAT ENTERPRISE LINUX AUTOMATION WITH ANSIBLE
18 February, 2025 - 21 February, 2025 - Linux Fundaments GL120
10 February, 2025 - 14 February, 2025 - See our complete public course listing
Blog Entries publications that: entertain, make you think, offer insight
Recently, I asked my friend, Ray, to list those he believes are the top 10 most forward thinkers in the IT industry. Below is the list he generated.
Like most smart people, Ray gets his information from institutions such as the New York Times, the Wall Street Journal, the Huffington Post, Ted Talks ... Ray is not an IT expert; he is, however, a marketer: the type that has an opinion on everything and is all too willing to share it. Unfortunately, many of his opinions are based upon the writings/editorials of those attempting to appeal to the reading level of an 8th grader. I suppose it could be worse. He could be referencing Yahoo News, where important stories get priority placement such as when the voluptuous Kate Upton holds a computer close to her breasts.
Before you read further, note that missing from this list and not credited are innovators: Bill Joy, Dennis Ritchie, Linus Torvalds, Alan Turing, Edward Howard Armstrong, Peter Andreas Grunberg and Albert Fent, Gottfried Wilhelm Leibniz/Hermann Grassmann ... You know the type: the type of individual who burns the midnight oil and rarely, if ever, guffaws over their discoveries or achievements.
C# PROGRAMMING –MAIN DESIGN GOALS
C# is a popular programming language these days, and it was designed from inception to provide a simple, clean, general purpose programming language for those intending to work within the confines of Microsoft’s .NET framework. Since then, it has been approved as one of the standard languages by both ECMA and ISO, making C# programming an essential tool in every programmers’ kit.
Different languages have different uses and specialties, and C# was designed for programmers to be able to use it to create different components for use in software that would be deployed and distributed en masse, to live use environments. This means that designers had to really put an emphasis on making the actual source code extremely compatible and portable. Those already familiar with C or C++ should definitely notice this emphasis.
Another particular point of emphasis during design was focus on internationalization of the language; it was intended from inception to be available all over the world, and to see all sorts of different implementations based on variance in regional programming technique. The resultant use should help the language develop sophistication as it is refined throughout different versions.
The original article was posted by Michael Veksler on Quora
A very well known fact is that code is written once, but it is read many times. This means that a good developer, in any language, writes understandable code. Writing understandable code is not always easy, and takes practice. The difficult part, is that you read what you have just written and it makes perfect sense to you, but a year later you curse the idiot who wrote that code, without realizing it was you.
The best way to learn how to write readable code, is to collaborate with others. Other people will spot badly written code, faster than the author. There are plenty of open source projects, which you can start working on and learn from more experienced programmers.
Readability is a tricky thing, and involves several aspects:
- Never surprise the reader of your code, even if it will be you a year from now. For example, don’t call a function max() when sometimes it returns the minimum().
- Be consistent, and use the same conventions throughout your code. Not only the same naming conventions, and the same indentation, but also the same semantics. If, for example, most of your functions return a negative value for failure and a positive for success, then avoid writing functions that return false on failure.
- Write short functions, so that they fit your screen. I hate strict rules, since there are always exceptions, but from my experience you can almost always write functions short enough to fit your screen. Throughout my carrier I had only a few cases when writing short function was either impossible, or resulted in much worse code.
- Use descriptive names, unless this is one of those standard names, such as i or it in a loop. Don’t make the name too long, on one hand, but don’t make it cryptic on the other.
- Define function names by what they do, not by what they are used for or how they are implemented. If you name functions by what they do, then code will be much more readable, and much more reusable.
- Avoid global state as much as you can. Global variables, and sometimes attributes in an object, are difficult to reason about. It is difficult to understand why such global state changes, when it does, and requires a lot of debugging.
- As Donald Knuth wrote in one of his papers: “Early optimization is the root of all evil”. Meaning, write for readability first, optimize later.
- The opposite of the previous rule: if you have an alternative which has similar readability, but lower complexity, use it. Also, if you have a polynomial alternative to your exponential algorithm (when N > 10), you should use that.
Use standard library whenever it makes your code shorter; don’t implement everything yourself. External libraries are more problematic, and are both good and bad. With external libraries, such as boost, you can save a lot of work. You should really learn boost, with the added benefit that the c++ standard gets more and more form boost. The negative with boost is that it changes over time, and code that works today may break tomorrow. Also, if you try to combine a third-party library, which uses a specific version of boost, it may break with your current version of boost. This does not happen often, but it may.
Don’t blindly use C++ standard library without understanding what it does - learn it. You look at
documentation at it tells you that its complexity is O(1), amortized. What does that mean? How does it work? What are benefits and what are the costs? Same with std::vector::push_back()
, and with std::map
. Knowing the difference between these two maps, you’d know when to use each one of them.std::unordered_map
Never call
or new
directly, use delete
and [cost c++]std::make_shared[/code] instead. Try to implement std::make_unique
yourself, in order to understand what they actually do. People do dumb things with these types, since they don’t understand what these pointers are.usique_ptr, shared_ptr, weak_ptr
Every time you look at a new class or function, in boost or in std, ask yourself “why is it done this way and not another?”. It will help you understand trade-offs in software development, and will help you use the right tool for your job. Don’t be afraid to peek into the source of boost and the std, and try to understand how it works. It will not be easy, at first, but you will learn a lot.
Know what complexity is, and how to calculate it. Avoid exponential and cubic complexity, unless you know your N is very low, and will always stay low.
Learn data-structures and algorithms, and know them. Many people think that it is simply a wasted time, since all data-structures are implemented in standard libraries, but this is not as simple as that. By understanding data-structures, you’d find it easier to pick the right library. Also, believe it or now, after 25 years since I learned data-structures, I still use this knowledge. Half a year ago I had to implemented a hash table, since I needed fast serialization capability which the available libraries did not provide. Now I am writing some sort of interval-btree, since using std::map, for the same purpose, turned up to be very very slow, and the performance bottleneck of my code.
Notice that you can’t just find interval-btree on Wikipedia, or stack-overflow. The closest thing you can find is Interval tree, but it has some performance drawbacks. So how can you implement an interval-btree, unless you know what a btree is and what an interval-tree is? I strongly suggest, again, that you learn and remember data-structures.
These are the most important things, which will make you a better programmer. The other things will follow.
Facebook was originally intended as a way for people to stay in touch with friends and family members by sharing pictures and status updates on their timeline. As the website's popularity has grown, so has criticism that it is becoming one giant, online high school.
Online Bullying
There has been a dramatic increase in recent years in the number of online bullying cases due to the introduction of social media. Bullying isn't just limited to younger Facebook users, either. Many adult users have also resorted to bashing others online through nasty status updates and cruel comments.
Prior to social media, bullying in high school involved "kick me" signs and toilet swirling. Facebook and other social media outlets have allowed users to take bullying to a whole other level. Victims can no longer escape bullying by leaving school or work. The torture continues online, at anytime and anyplace.
Status "Likes"
In high school, everyone wants to be part of the popular crowd; people who are outgoing, beautiful, and seem like they have everything. Posting a status update is similar to wanting to be popular. Once an update is posted, many users wait with bated breath to see how many friends will "like" their status. They believe that the more "likes" they receive, the more popular they are.
If that isn’t enough, there are many Facebook games that involve "liking" someone's status. Games like "Truth Is", where someone likes a status update and in return the poster writes how they really feel about the friend on their Facebook wall. This can get touchy, especially if the two people aren't friends outside of Facebook. It's similar to high school where someone desperately wants another person to like them, but when they find out how that person really feels they are crushed.
Relationships Are Difficult to Keep Private
When someone signs up for Facebook they’re asked to complete their profile, which includes a relationship section. Users can select from different options including "single", "married", "widowed", and "divorced". Whenever someone changes their relationship status, the update shows up on each of their friend's news feeds.
It's easy to see how this feature correlates with high school where everyone talks about who is dating who or which couple broke up. It used to be that after graduation, people were able to keep their relationships more to themselves. Not so anymore in the age of social media. Now everyone has the ability to state their opinion on a friend's relationship status, either by "liking" their status change or by commenting on it.
Facebook has presented many benefits to its users, including the ability to rekindle old high school friendships. What one must understand when they sign up for the service is that they are opening themselves up to the same criticism and drama that takes place in a high school setting.
Proceed with caution!
Tech Life in Virginia
Company Name | City | Industry | Secondary Industry |
---|---|---|---|
Brink's Inc. | Richmond | Business Services | Security Services |
Federal Home Loan Mortgage Corporation (Freddie Mac) | Mc Lean | Financial Services | Lending and Mortgage |
General Dynamics Corporation | Falls Church | Manufacturing | Aerospace and Defense |
CarMax, Inc. | Henrico | Retail | Automobile Dealers |
NVR, Inc. | Reston | Real Estate and Construction | Construction and Remodeling |
Gannett Co., Inc. | Mc Lean | Media and Entertainment | Newspapers, Books and Periodicals |
Smithfield Foods, Inc. | Smithfield | Manufacturing | Food and Dairy Product Manufacturing and Packaging |
ManTech International Corporation | Fairfax | Computers and Electronics | IT and Network Services and Support |
DynCorp International | Falls Church | Manufacturing | Aerospace and Defense |
Genworth Financial, Inc. | Richmond | Financial Services | Insurance and Risk Management |
MeadWestvaco Corporation | Richmond | Manufacturing | Paper and Paper Products |
Dollar Tree, Inc. | Chesapeake | Retail | Department Stores |
Alpha Natural Resources, Inc. | Abingdon | Agriculture and Mining | Mining and Quarrying |
SRA International, Inc. | Fairfax | Business Services | Business Services Other |
NII Holdings, Inc. | Reston | Telecommunications | Wireless and Mobile |
Dominion Resources, Inc. | Richmond | Energy and Utilities | Gas and Electric Utilities |
Norfolk Southern Corporation | Norfolk | Transportation and Storage | Freight Hauling (Rail and Truck) |
CACI International Inc. | Arlington | Software and Internet | Data Analytics, Management and Storage |
Amerigroup Corporation | Virginia Beach | Financial Services | Insurance and Risk Management |
Owens and Minor, Inc. | Mechanicsville | Healthcare, Pharmaceuticals and Biotech | Personal Health Care Products |
Advance Auto Parts, Inc | Roanoke | Retail | Automobile Parts Stores |
SAIC | Mc Lean | Software and Internet | Software |
AES Corporation | Arlington | Energy and Utilities | Gas and Electric Utilities |
Capital One Financial Corporation | Mc Lean | Financial Services | Credit Cards and Related Services |
Sunrise Senior Living, Inc. | Mc Lean | Healthcare, Pharmaceuticals and Biotech | Residential and Long-Term Care Facilities |
Computer Sciences Corporation | Falls Church | Software and Internet | Software |
Altria Group, Inc. | Richmond | Manufacturing | Manufacturing Other |
Northrop Grumman Corporation | Falls Church | Manufacturing | Aerospace and Defense |
Alliant Techsystems Inc. | Arlington | Manufacturing | Aerospace and Defense |
Markel Corporation | Glen Allen | Financial Services | Insurance and Risk Management |
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 Virginia 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 Cloud programming
- Get your questions answered by easy to follow, organized Cloud experts
- Get up to speed with vital Cloud 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…