Categories
Course Review

Creating Maintainable Contexts for Automated Testing – Course Review

I have just finished Creating Maintainable Contexts for Automated Testing by Mel Grubb, on Pluralsight (yes, that title is quite a mouthful!)

I haven't really bothered with reviews of most courses I take – counting this one I watched 43 this year – a bunch on Pluralsight, some MBA courses, and 14 non-fiction books. This one was interesting enough that it was worth mentioning.

It covers ways to make your test code cleaner. What I liked:

  • using a Random library to document what is boilerplate on a test is what is important – name = library.RandomName() is very different from name = “Luiz Marques”, as it shows that it has no particular importance.
  • From the next step, adding Mother objects, which are simple static classes that return ready to go instances – such as .Simple() and .Typical(). If you need to, you can then change anything that is important for the test, and it will be very obvious. As a bonus, any changes to the objects (such as an added property) can be dealt on a single place, instead of having to be fixed on possibly dozens of tests.
  • Converting the mothers to the Builder pattern, which makes thing slightly clearer (but adds a lot of code), improving discoverability and makes it easier to change objects.
  • Using CSX to auto-generate most of the builder objects on each build.

Overall, very interesting, and well worth the time, specially if you already have Pluralsight.

Categories
Course Review

Reducing Product Risk – Course Review

Reducing Product Risk is a course at PluralSight, by Nenad Laskovic.

It covers ways to minimize risk when creating new products or features. It is pretty short – about an hour.

It has a few different ways of testing various risks for a product, such as:

  • lack of demand
  • inability to complete the project in time or budget
  • not being better than the competition
  • poor UX or performance
  • not solving the actual problem, just what you think it was

Of course, it then covers ways to mitigate those risks, such as using landing pages and ads to test for demands, using prototypes to test the UX, etc.

Overall, useful considering the limited time spent.

Categories
Course Review

Introduction to Prism for WPF – Course Review

Introduction to Prism for WPF, by Brian Lagunas, is a Pluralsight course that covers how to use Prism, a MVVM library for WPF.

The course is not very long (about 4 hours), and it covers the basics of how to use Prism quite well. Examples are simple and to the point.

Prism is much, much better than using raw MVVM, as it takes a lot less code do the same, leaving your code much clearer and more concise.

However, my standard comparison point is DevExpress.MVVM, which is also free, but which I already have paid support in my regular component subscription with them. Plus, they manage to require even less code, and have many cool features.

Overall, recommended if you are interested in Prism. But you might want to take a look at DevExpress' library, too.

Categories
Course Review

Learning Path: Java Professional Developer – Course Review

Learning Path: Java Professional Developer is a Learning Path in Safari. These usually have sets of book chapters or videos from different sources.

This one is from Paul J. Deitel Java video courses, alone. It covers a lot of Java, from the basics to Swing, some JDBC and the start of Java FX.

I felt it was interesting, but the absence of closed captions/transcripts, and the overall slow approach meant that I did a whole lot of skipping (even at 1.75 speed). A clickable transcript like some of MOOCs would be wonderful here – you can just read along for most of it, skipping to any parts where the visuals are important.

A lot of the video is given to explaining code. Sometimes this useful, but most of the time for me, the code was pretty clear and I had to skip around to not waste a lot of time.

The coverage seems good. Having a single part of Java FX was reasonable, as it gives you a taste of it without wasting too much time. Personally, I was a bit interested, but support in IntelliJ seems a bit primitive compared to WPF/UWP or even old Delphi, and I constantly hit on annoying bugs (such as disappearing sections on the in IDE version of Scene Builder).

It seems silly to mention it, but all the code in the repository worked and matched the one in the video. Sadly, that is not always the case.

Overall, interesting, and good coverage, but a little too slow.

As a mildly funny tidbit, while reviewing the course I noticed that a paul.deitel user gave the course 5 stars. Well, it makes sense that he'd like it…

Categories
Product Review

.NET Micro ORMs – Course Review

Just finished .NET Micro ORMs, by Steve Michelotti, on PluralSight.

This course covers a few Micro ORMs for .NET – including Dapper, OrmLite, Massive, PetaPoco and Simple.Data.

It was very interesting to see how easy they are to use, and how fast they are, compared to Entity Framework.

From my very limited experience, the best for me seems to be OrmLite – which is not surprisingly a paid product (although it has a free version for up to 10 tables in a project, which can work in some situations).

All the others seem very interesting, though.

 

 

Categories
Product Review

WPF MVVM In Depth: Course Review

WPF MVVM In Depth is a PluralSight course by Brian Noyes that covers using the MVVM pattern (Model/View/ViewModel pattern) in WPF.

I really like the way MVVM cleanly separates concerns. Great for re-usability and unit testing. It also goes pretty nice with WPF.

I have taken some of Brian Noyes courses before, and as usual this one was pretty clear and had very useful examples to follow along.

Overall, very much recommend if you are interested in MVVM in WPF.

 

Categories
Product Review

WPF Productivity Playbook

Just finished WPF Productivity Playbook on PluralSight.

Lots of smaller productivity details I didn't know in WPF, as well as examples of several other things you can do with WPF.

Very interesting, and very well presented. My only complaint would be that there are no captions.

Got to say that the more I learn about it, the more I like WPF. Too bad that MS seems to be phasing it out…

 

Categories
Product Review

Principles of Game Design – Course Review

I recently completed the course Principles of Game Design, on Coursera, from Michigan State University. This course is part of the Game Design and Development Specialization.

I have reviewed the first course in the series – Introduction to Game Development .

This one covers how to design games – having game ideas, creating a story, characters and most of all good gameplay.

It is far less practical than the first, given its nature, although you are supposed to make a prototype of your game for the final assignment.

I took the free version, which unlike the first course, doesn't have quizzes and you can't turn in assignments (of course, you are free to make and evaluate then on your own).

One thing I particularly liked is that every video has a linked transcription. If you read faster than the video, on most classes in this course (which has little graphical supporting material, most of the time), this is much faster. The course also had plenty of links to books, articles and papers on the topics covered, many which great coverage.

The course was interesting, and I've learned a lot. The thing is, one of the books they suggested – Fundamentals of Game Design, by Ernest Adams – is so good that reading the equivalent book chapter always felt better than the course lesson. And as a plus for me, it was already included in Safari, which I already subscribed to (so it is practically free).

Of course, while the book is also filled with exercises, you get no feedback from it (but the feedback from the course, if it is like the first, is just from students, not teachers or TAs). You also don't get a certificate. So keep all of that in mind. In my case, I feel the book is substantially better.

 

Categories
Product Review

Quick Start To Unity – Course Review

Quick Start to Unity is a learning path on PluralSight/DigitalTutors that shows some of the basics of getting around in Unity and making a simple game.

There are about 3 hours of video content (although I took a couple of hours more, as I followed along in Unity and took notes).

I felt the focus was pretty good. I took it after the much longer Coursera Course, Introduction to Game Development . It doesn't cover everything from the course, but it has a nice set and several things that weren't covered in it.

In particular, there were plenty of small tips on how to get better looks (the course is apparently a bit more target toward artists). The completed project is quite simple, but looks quite nice.

Quick Start To Unit Course Final Project
Quick Start To Unit Course Final Project

What I didn't like:

  • the course is for Unity 4, and there is no information on how to make things work with Unity 5. So several times I'd have to Google how to do things. Some text on the bottom from the author with the changes would be great.
  • The video player doesn't allow speeding.

Overall, it is pretty interesting if you already have a Pluralsight subscription, or if you use their trial.

 

Categories
Product Review

Introduction to Game Development – Course Review

Introduction to Game Development, by Michigan University, is a MOOC in Coursera that teaches the principles of game development.

It shows some general principles, and then mostly dives into Unity, which is a very popular game development tool, free for most users, and very easy to use.

You will then develop 3 simples games as you learn Unity and game development:

  1. Solar System – a very simple model of the solar system, with planets that rotate around the sun, moons, light and sound effects.
  2. A roller ball game, where you collect coins and avoid enemies.
  3. A simple shooter where you shoot boxes till you run out of time.

You don't need to be a programmer, but it will make things easier on the last week of the course, and enable you to do more on your games.

My version of the level 2 of Box Shooter
My version of the level 2 of Box Shooter

 

You have mostly simple quizzes per section, and peer reviewed projects. On both, you will need to pay and verify who you are (by using a webcam) to get the certificate. Of course, that is just a way to get money, as verifying that you are in the room doesn't verify that you answered your quizzes yourself or that you made the project you are uploading. It is a simple way to monetize the courses, however, so I can't grumble much about it.

In this course, you can do all quizzes and projects without paying. You just don't get the certificate.

The course is part of Game Design and Development Specialization . It is interesting to note that quizzes and projects are disabled if you don't pay for the next course. Courses are cheap, though, just US$59.

Overall, I felt that the course was interesting, and I had fun building the games, even if I don't know if I am going to follow up on game development.

On a more somber note, the second project had the page broken (the assignment was blank) and even a week after I reported this and several people mentioned in the discussion forum, nothing was done. Questions about things that no longer work (because of Unity updates) went unanswered by the teacher or TAs.

So I'd be a lot less likely to buy one of these courses, knowing that if the course is broken, it is your problem.