Developing Applications Using Ruby on Rails

Ruby on Rails

In researching this blog about Ruby on Rails, I began with an internet search for the word “Ruby.” I figured I’d get results about the precious ruby gem stone…how the ruby is the birth stone for July, or the fact that for thousands of years the ruby gemstone was the most valuable gemstone above the diamond, or how people have been creating synthetic rubies since 1837.

Instead I was pleasantly surprised to see search results for Ruby and Ruby on Rails the top of the list. Clearly “Ruby” the programming language has become more precious to many of us than “ruby” the gemstone.

Yes, the Ruby language was named after the gemstone and was released in 1995 by Yukihiro Matsumoto. Ruby is an open source, object-oriented language with an easy to read and write syntax. Instead of mining the web looking for instruction on how to use this precious programming language, you can find five new courses right here at LearnNowOnline.

Helping you mine your way through building Ruby applications is our new instructor, Jordan Hudgens. Jordan is a Certified Ruby Developer and comes to us from the great state of Texas where he is working toward his doctorate in Computer Science. Jordan will show you how to create your Ruby applications in the cloud. Instead of having to pickaxe your way through the development process, Jordan will show you how to use the gems that make Ruby application development easy.

Our new courses include:

  • Ruby on Rails: Intro to Development (Now available)
    Get an overview of the tools that will be used for the Ruby courses, plus create a quick application.
  • Ruby on Rails: Best Practices (Now available)
    Learn how to use the Ruby development tools in the best possible way.
  • Ruby on Rails: Data, Design, and Deploy (Coming 10/27/14)
  • Ruby on Rails: Searching and Sorting (Coming 11/3/14)
  • Ruby on Rails: Administration and API (Coming 11/10/14)

Visit LearnNowOnline to learn more about these courses. Also, see Jordan in action as he introduces us to Ruby on Rails in his recent webinar – check out the replay now.

“Rails”, “Ruby on Rails”, and the Rails logo are registered trademarks of David Heinemeier Hansson. All rights reserved.

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.

 

Be Sociable, Share!

What’s new in MVC 5.2

mvc

Microsoft’s very successful model-view-controller architecture, or MVC, has been their flagship framework for developing next generation Web applications—and Microsoft continues to improve it with version 5.2 released just over two months ago. If you’re still hanging on to MVC 4, you’re missing out on many new and exciting features, and Microsoft has made the path to upgrade easier than ever.

So what’s so exciting about MVC 5? Let me start by hitting you with some of the big improvements with this latest release. If you want even more information or want to see some demonstrations of these new features, please check out our MVC 5.2 courses with expert Eric Greene.

One ASP.NET

In MVC 5, Microsoft introduced a new project type called One ASP.NET. This project type has the goal of saving the Web developer’s time by reducing the clutter of many single-focused Web templates constantly growing within Visual Studio. One ASP.NET creates a more “a la carte” model for creating applications so the developer can start with core functionality, and then add more and more components as various features and functionality are required. This allows developers to combine ASP.NET Web Forms, MVC, Web API and other project templates into a single project and not be restricted to use only one of them.

Bootstrap

From the brilliant minds of the Twitter software engineers came a CSS and JavaScript framework that has quickly become one of the most popular tools for front-end development. Bootstrap provides user interface tools and controls that allow developers to build rich Internet applications that auto-respond to changing screen sizes and devices. It takes away the drudgery of constantly tinkering with the CSS and JavaScript code necessary to get your site to perform professionally for all of your users.

Microsoft now includes Bootstrap templates in MVC 5 so you can take advantage of all its features right out of the box. In fact, Bootstrap is now the default HTML/CSS/JavaScript framework bundled with ASP.NET MVC. Bootstrap is managed by NuGet which means it can be automatically upgraded as the technology advances. You can discover more about Bootstrap by taking a look at our Bootstrap 3.1 courses with expert Adam Barney.

ASP.NET Identity

Before ASP.NET MVC 5, Microsoft had promoted its Membership Provider to handle security, authentication, and roles for your Web applications. But with the ASP.NET Identity, they completely rebuilt their security solution to include a whole new range of features. It still contains all the core functionality for authentication and authorization, but it also extends to support new forms like two-factor authentication (2FA) and integrated authentication. With 2FA, you can require multiple forms of authentication like the Google Authenticator or SMS text messaging. Integrated authentication allows you to work with many existing third-party providers like Google, Facebook, and Twitter. It allows your users to access your site using credentials from these and other providers, freeing you from the responsibility of managing credentials, and not forcing your users to memorize yet another password.

New Filters

Authorization filters have been around for quite a while in ASP.NET and have been a staple for most developers who need to set up security for their Web applications. Authentication filters, on the other hand, are new to MVC 5. These new filters allow for programming logic to occur before the authorization filter, giving developers the ability to better identify and control users entering their site. For example, developers can now assign a new authentication principal (think of it like a role) to a user logging in prior to the authorization filter, giving them better control at the individual Action/Controller level. Think of the authorization filter as providing a more global security model, one that covers the site as a whole, while the authentication filter provides a more specific security model that can be applied at more localized level.

Another new filter enhancement is filter overrides. Filter overrides allow you to define filters that apply to most of your application, either at the global level or at the controller level, but then have the option to actually override or turn off those filters at the action level or controller level.

Upgrading from MVC 4

Microsoft has made upgrading easy and painless for the developer. In a nutshell, most applications will simply need to update their NuGet packages, plus make a couple of web.config changes, and they will be off and running. The NuGet services manage all the individual components or packages that your Web application utilizes, like Razor and Bootstrap, and make sure that they are all on the latest releases relative your version of MVC. Keep in mind that in addition to moving to MVC 5, there are minor releases coming out as well. At the time of this writing, there have been 5.1 and 5.2 releases, but by the time you read this there may be 5.3 available and beyond. Regardless, migrations at this level are equally straightforward in their upgrade process.

Keep in mind that in many cases the migration forward is a one-way proposition. With each upgrade, your application is exposed to more and more features and functionality, which means you can’t go back once you start using it. But hey, why would you go back, right?

Finally, it’s not just ASP.NET MVC that is gaining new features—ASP.NET Web API, Razor, SignalR, Entity Framework, NuGet and many others are also improving. LearnNowOnline can help you keep up with the latest releases so you can be the best Web developer you can be. Check out our complete course list.

 

About the Author

Martin 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.

Be Sociable, Share!

MVC 5 Attributes: Routing, Authentication, and Overrides

webinar_MVC5

In a daring move we held our last webinar on a Thursday instead of our usual Wednesday. Oh my, what is the world coming to? Next thing you know there will be “Human sacrifice, dogs and cats living together… mass hysteria!” OK, maybe not. Now back to the subject at hand, our latest webinar.

Eric Greene presented an one hour webinar on the topic of MVC 5 Attributes and began by covering the many facets of Attribute Routing through coding demonstrations. Eric walked us through the process to use Authentication filters and explained how to use them with Authorization filters. He finished up by demonstrating filter overrides using Authentication and Authorization.

If our Thursday webinar didn’t match up with your schedule, as always we have the replay available for you to watch at your convenience. View the streaming replay now. Just remember, never cross the streams. If you do, when you build that killer app and the data points to something big on the horizon, it could be a 600 pound Twinkie!

By the way, are you interested in learning Ruby on Rails? If so, don’t miss our next webinar with Jordan Hudgens where he will introduce us to development using this exciting framework. Sign up now

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.

 

Be Sociable, Share!

Entity Framework’s Entity Data Model

EntityFrameworkDatadelwithDK

Don Kiely recently presented an interesting webinar on the Entity Framework Data Model—complete with his sled dogs in the background supporting him all the way.

Broadcasting from his home in Alaska, Don kicked off the webinar by explaining why Entity Framework’s Entity Data Model is the key link between the entity data objects in your application and the backend data store where data resides. Don went on to describe how the Entity Framework uses the model to generate .NET entity classes and APIs that provide powerful data access features to an application. Don then reached down into the guts of the XML that makes up the three Entity Data Models—conceptual, storage, and mapping—to give us a good understanding of how Entity Framework implements many of its features. Don’s dogs chimed in from time to time, unable to wait for the Q&A to show their enthusiasm for the topic.

If you missed Don (and his dogs), catch the webinar replay here. Also, take a moment to register now for our next event titled “What’s new in iOS8 and Xamarin” presented by Wally McClure.

 

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.

 

Be Sociable, Share!

Going “Greene” with MVC 5.2

recyclekeyboard

We’re going “Greene” in our latest course releases— but don’t worry about recycling code in the big green dumpster at the end of your driveway. By “Greene” I mean Eric Greene, our newest instructor.

Eric is an independent IT professional who loves learning new things, sharing what he learns, and helping clients to solve business problems. He holds numerous software certifications and has experience programming mobile, web-based, and desktop applications using a variety of commercial and open-source platforms. Now Eric has joined forces with LearnNowOnline to produce two new courses to help you understand what’s new in MVC 5.2.

MVC or Model View Controller is an architectural pattern used for interface design. Each part of MVC has a different function. The Model controls the functioning aspects of the user interface. The View is the information from the Model—for example data-related graphics or other types of Views. The Controller is input information from the user that is relayed to the Model and does affect the View.

MVC  5 allows you to build web applications more efficiently.  See what’s new in MVC 5.2 with these new courses featuring Eric Greene:

MVC 5.2: OneASP.NET, Upgrading and Bootstrap
In this course, you’ll see that One ASP.NET makes new ASP.NET MVC project creation easier and more efficient… thus cutting down on wasted time. You’ll learn how to upgrade MVC  4 applications to MVC  5, again recycling old code instead of writing all new stuff. Then you’ll see how to use Bootstrap, a collection of tools for creating web applications that makes design easier and faster.

MVC 5.2: Views, Attributes, Identity and Filters
In this course, you will learn about the new enhancements to MVC Views such as Enum Helpers and unobtrusive Ajax for the MaxLength and MinLength attributes.  Another cool new feature bundled with MVC  5 is Attribute Routing.  With several new attributes, you can easily configure routes directly on the controller and its actions. These new enhancements make coding faster and easier.  You will learn what ASP.NET Identity is and review the default ASP.NET Identity code created by Visual Studio in new MVC  5 projects.  Finally, you will see Authentication Filters and Filter Overrides in action.

Check out these new courses to see why MVC  5 makes building web applications faster and easier than ever. You’ll be going “Greene” in no time as you learn how to do more with less.

 

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.

Be Sociable, Share!

Avoiding hacker tricks

hacker-image

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

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.

Be Sociable, Share!

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

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.

Be Sociable, Share!

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:
NewAngleWebDevelopmentimg1

And if I change the value of Fahrenheit, the Celsius instantly changes as well, as shown here:
NewAngleWebDevelopmentimg2
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.

Be Sociable, Share!

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.

Be Sociable, Share!

Introduction to Python 3

python-logo-master-v3-TM-flattened

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.

Be Sociable, Share!