Monthly Archives: August 2014

Avoiding hacker tricks


So in a perfect world, your computers, servers, and web pages could not be hacked. In a perfect world, users would not be allowed access to data or your servers. In a perfect world, computers would be stand-alone machines. In a perfect world, I would have a flying car and sharks with laser beams in a moat around my castle. We all know there is no such thing as a perfect world…and the flying car has little over a year to appear, at least according to the “Back to the Future” movies.

Because we don’t live in a perfect world, we need to have computer security. Computer security is said to be a reactionary endeavor. The IT security people are always reacting to a new threat. With that being said, there are ways to be proactive. In our most recent live webinar, expert Mike Benkovich covered ways that you can prevent some of the most common attacks.

Mike explored a secure development approach and showed some of the top exploits that you need to know about. He demonstrated how you can use .NET features to stop exploits before they happen, and he showed injection attacks, cross-site scripting, and security misconfiguration. We looked at the hacker’s psyche and showed how they think and work, and learned what we can do to build more secure software. With all the stories of data breaches in the last year or so, it is even more important to be sure you are on top of security from initial development of any project.

In a perfect world, you would have been able to attend this webinar. In perfect world, there would be a recording of this webinar available to you. Well, the world is not perfect, but in this case we do have the replay of the webinar for your viewing pleasure. The world may be perfect once flying cars appear.


About the Author


Brian Ewoldt is the Project Manager for LearnNowOnline. Brian joined the team in 2008 after 13 years of working for the computer gaming industry as a producer/project manager. Brian is responsible for all production of courses published by LearnNowOnline. In his spare time, Brian enjoys being with his family, watching many forms of racing, racing online, and racing Go-Karts.

Entity Framework 6.1 Fundamentals

New from our instructor in the land of the midnight sun are new courses covering the fundamentals of Entity Framework 6.1. That instructor is Don Kiely…and between high adventure trips, skijoring, saving sled dogs, dodging moose, and running marathons, Don has found the time to work with us to create two excellent new courses.

According to Microsoft, Entity Framework (EF) is an object-relational mapper that enables .NET developers to work with relational data using domain-specific objects. It eliminates the need for most of the data-access code that developers usually need to write.

In our first new course, Entity Framework 6.1: Introduction, Don covers the basics from data access issues to the EF API and tools. In the second course, Entity Framework 6.1: Data Model, as the title suggests, Don digs in to the entity data model. These courses total over four hours of video training and are now available. Learn more

Entity Framework 6.1: Introduction

Watch trailer – Entity Framework 6.1: Introduction

Entity Framework 6.1: Data Model

Watch trailer – Entity Framework 6.1: Data Model







Watch for more EF courses from Don coming in the near future. In the meantime, I invite you to attend Don’s upcoming webinar on the Entity Framework Entity Data Model. He will be broadcasting live from Alaska beginning at 1pm CST on Wednesday, September 10th. (Don’t be surprised if you hear his dogs barking at moose in the background!) Register now

About the Author


Brian Ewoldt
 is the Project Manager for LearnNowOnline. Brian joined the team in 2008 after 13 years of working for the computer gaming industry as a producer/project manager. Brian is responsible for all production of courses published by LearnNowOnline. In his spare time, Brian enjoys being with his family, watching many forms of racing, racing online, and racing Go-Karts.

A New Angle on Web Development

There is a relatively new open source JavaScript framework that is currently taking the web development community by storm. I’m speaking of AngularJS, which Black Duck’s Open Hub Web site (formerly Ohloh) currently has listed as one of the most active open source projects. Although it started at the top of 2010, it has really been in the last couple years that it has grown to rock star status and has become a go-to framework for many web developers.

So what’s so powerful about AngularJS? The power is in how it easily binds data to the objects on a Web page. It is essentially an MVC framework that can efficiently create dynamic views in a Web browser. AngularJS is built to perform all those complex, low-level DOM manipulation commands so you don’t have to. But doesn’t jQuery do that? Sure, but AngularJS is jQuery to the next level, and can be used in tandum with jQuery or as a complete replacement. AngularJS also provides built-in AJAX support and, unlike jQuery, RESTful services support.

AngularJS also has the unfair advantage of being heavily supported by Google with many Google developers actively working to improve the framework. That has led to a huge community that is actively engaged with the open source project on GitHub. So with or without Google, it is destined to stay on top as one of the best frameworks to use—so use it with confidence.

Ok, so what does AngularJS look like? Let’s look at a simple example of data binding using AngularJS. We will take a look at a Web page to do Fahrenheit to Celsius converting. The first step is we need to reference the Angular JavaScript file in the <head> tag. That is shown here:

Next add the following HTML code to the body:

What’s going on here? In the first DIV tag we provide scope for the block of HTML that will leverage AngularJS by including the “ng-app” attribute. AngularJS chose the ng namespace for the fact that when you phonetically say “NG” you say “aye-n-g” which is about as close to “angle” that you can get with two letters. Ok, moving on.

We then see an attribute “ng-init” that is used to initialize a variable “fTemp.” This sets the variable to 32. It is then used in the <input> tag to bind that textbox value to the variable fTemp. This variable is then used in the calculation of Celsius. Next you come across the double curly braces, “{{ }}”, which AngularJS picks up and evaluates what is between them. In this case, we calculated what the equivalent Celsius value is based on the current setting of Fahrenheit.

Below is what the page looks like:

And if I change the value of Fahrenheit, the Celsius instantly changes as well, as shown here:
Although this is a simple AngularJS example, I hope you can see the power behind it. It wouldn’t take much additional code to bind this Web page to a RESTful service that returns the current temperature in your area. And it’s not just weather data – you could hook up dynamic pages to your company’s data and manipulate it easily on the fly without getting buried in all the DOM-related calls or dealing with all the nuances of different browsers.

Check out our AngularJS courses for yourself and see John Culviner break down AngularJS so you can leverage the power in your Web sites.

About the Author

martysMartin Schaeferle is the Vice President of Technology for LearnNowOnline. Martin joined the company in 1994 and started teaching IT professionals nationwide to develop applications using Visual Studio and Microsoft SQL Server. He has been a featured speaker at various conferences including Microsoft Tech-Ed, DevConnections and the Microsoft NCD Channel Summit. Today, he is responsible for all product and software development as well as managing the company’s IT infrastructure. Martin enjoys staying on the cutting edge of technology and guiding the company to produce the best learning content with the best user experience in the industry. In his spare time, Martin enjoys golf, fishing, and being with his wife and three teenage children.

What Makes the Best Reference Material

What is the best material to use when you want to learn a new topic within development or IT? If you are an experienced developer or IT pro, what is the best reference material to use?

These questions come up often, and typically developers and IT pros look at reference material and training material as coming from two different sources.  In my opinion, you need robust learning material that can first be used as training and subsequently as reference material.

Generally if someone needs to learn a skill (like how to effectively manage a project), a programming language (like C# or JavaScript), or a technology (like SharePoint or SQL Server), they will look for learning material that is focused on that specific subject. Many will look for “courses” on the topic thinking that is all they need. Effective developers and IT pros will instead look for “solutions” that will give them the best approach to solving their issue both in learning the subject from beginning to advanced and for reference material later.

Great reference material…

  • Is very searchable, including the ability to easily filter and find the needed material quickly.
  • Is built with short learning bytes so the user can learn it fast and get back to work.
  • Fits different learning styles.
  • Is practical and thorough.

Great training material has many of the same attributes…

  • Is well-organized, taking the learner from intro level concepts to advanced development.
  • Includes varied learning resources that will work well for different learning styles – learning visually, plus learning by doing, listening and reading. Many people learn best from different learning modalities.
  • Includes labs and “try-it-outs” so a person can practice and reinforce what he or she has learned.

Once you have learned your new skill, language, or technology, you are not done learning. You will continue to learn on-the-job and through trial and error. And sometimes you’ll encounter issues where you don’t know or can’t remember what to do.

When reference material is needed to solve a problem, what do you look for? Ideally it is best for developers and IT pros to find training material that also can function as easy-to-use reference material, such as…

  • Providing a strong search/filter system so you can find what you need quickly. There is nothing worse than needing a quick answer on how to do something and then spending hours searching for that answer. You need to find it fast, learn it fast, and get on with your life.
  • Being concise to best address your specific issue quickly. You don’t want to listen to someone blab on and on in a training video who never gets to the point. You need specific, practical advice—not training where the ego of the instructor gets in the way.
  • Training material that covers multiple learning modalities: read, listen, watch, do.

LearnNowOnline training has been designed to be excellent resource for both training and reference material, including:

  • Resources that will support all learning modalities: video training, ebooks/courseware, sample code, hands-on labs, and “try-it-outs.”
  • The best search/filter system to help you to access what you need quickly and easily.
  • Videos built in 5-10 minute nuggets so you can learn exactly what you need fast.
  • Content that is thorough, deep and comprehensive, written and presented by the best experts in that technology.

If you need learning resources for SharePoint, Visual Studio, SQL Server, JavaScript, PMP or other Developer and IT Pro technologies, I invite you to check out LearnNowOnline for yourself and experience a solution that provides both excellent training AND reference material.

About the Author

Craig PhotoCraig Jensen is the President and CEO of LearnNowOnline. Craig has led the company’s change from instructor-led classroom training, to self-study CD/DVD training, to the award winning online learning solutions offered today. Craig is passionate about helping individuals and businesses of all sizes solve their problems through practical learning and technology. He is involved in setting direction for the company, including selecting training content for development with resources to support all learning styles. He is also involved in The CEO Roundtable organization in the Twin Cities as well as the Minnesota High Tech organization. In his spare time, Craig loves to travel, golf, and partake in water sports of all kinds.

Introduction to Python 3


This week marked the release of our new courses covering Python 3. The Python language was originally developed in 1989 by Guido van Rossum.

And now for something completely different…”The Larch.”

As you can tell, I am a fan of Monty Python’s Flying Circus and so is Mr. Rossum. In fact that is why the language is called Python. If you don’t know who or what Monty Python’s Flying Circus is, they were a British comedy troop seen on British TV from the late 60s to the early 70s, followed up by several movies. Mr. Rossum still heads up the Python project, which is an Open Source project, and he has been given the title of Benevolent Dictator for Life (BDFL).

The Python language is a general purpose programming language that allows the programmer to create applications using less code by using constructs. Python is an object-oriented language and supports multiple programming paradigms and functional programming.

Peter Thorsteinson is the instructor for our Python courses.  I don’t know if he is a Monty Python fan, but I do know that he did a great job with these courses, making sure to cover every detail that someone who is new to Python will need in order to use the language to create applications. Our courses include:

Unlike the Monty Python TV show, there will be no dead parrots or need to figure out the weight of a swallow. Also, be thankful that the language was not named “Ekki-ekki-ekki-ekki-PTANG. Zoom-Boing, z’nourrwringmm.”

About the Author

BrianBlogpicBrian Ewoldt is the Project Manager for LearnNowOnline. Brian joined the team in 2008 after 13 years of working for the computer gaming industry as a producer/project manager. Brian is responsible for all production of courses published by LearnNowOnline. In his spare time, Brian enjoys being with his family, watching many forms of racing, racing online, and racing Go-Karts.