John Papa | Evangelist on the loose | Page 2

John Papa

Evangelist on the loose

SPA and the Single Page Myth


SPA is one of the most exciting technology strategies today, but it may be one of the worst terms in modern web development. Just the word “Page” can have many meanings. SPA Misconceptions Chances are you have heard the term SPA tossed around at the office. SPA’s are on the rise but there are a lot of misconceptions about what SPA means. SPA stands for Single Page Applications … but are they truly a Single Page App? I’ve found that one of the biggest hurdles for folks understanding SPA is the term itself. The name can often imply that you […]

HotTowel.Angular and ASP.NET Web API 2 Compat


If you watched my course Build Apps with Angular and Breeze the first week it was out and followed along by installing HotTowel, you may have hit an incompatibility with the recently released ASP.NET Web API 2 and Entity Framework 6. Good news! The exercise files, github repo code samples, and the NuGet packages for HotTowel.Angular and HotTowel.Angular.Breeze have all been updated to work with Breeze 1.4.5, Web API 2, and Entity Framework 6. So as you go through the course you can use the latest and greatest now. This course came out right when these new technologies went live, […]

Setting the Prototype Constructor in JavaScript


While writing the upcoming Part 2 of my Pluralsight course Building Apps with Angular and Breeze, I found myself wanting to extend a constructor object with another constructor’s members. I had an object called AbstractRepository that has a set of functions (ex: getAll, queryFailed) that could be shared by many repositories. I had a LookupRepository with its own functions that are very specific to getting “lookups”. The way I settled on was to extend the AbstractRepository‘s functions onto the LookupRepository by setting the prototype’s constructor. The result is that the LookupRepository gets all the functions that it has plus the […]

Create an Angular App in Seconds with Hot Towel


Looking for an easy way to kick-start your Angular app development in under a minute? Now you can with HotTowel.Angular, a free NuGet package (and soon to become a Bower package too). What do you get? Let’s take a look … What’s Inside? There are a few libraries out of the box that come with HotTowel.Angular. Of course Angular is in here, but there are a few others I bundled into this package as they work very well together and I find myself wanting them in most apps. They help add a bit of style, theming, and helpers. Angular core […]

Slim, Trim, and Nimble Intel Haswell

with 1 comment

I’ve been toting around my Intel Haswell Ultrabook for a few months now and the combination of slim, trim, fast, touch, and long battery life has mad eit my laptop of choice. I’ve had several review Ultrabooks (Intel has been gracious enough to send some my way) and they all had their pro’s and cons, but this one has really set itself apart for me. I was even asked by a few folks if it was a black Mac Air! It has not been all roses, however. This pre-production unit is my 3rd laptop from Intel. The first 2 had […]

Build Apps with Angular and Breeze


You know how sometimes we start coding a simple app and you start sprinkling a few cool tiny features and suddenly you realize your app has blossomed into something special? Well, that’s how I feel about the app you will build in my latest course-series (yes, “series” is no typo) for Pluralsight titled “Building Apps with Angular and Breeze“. I started out thinking I’d just help folks get up to speed on building simple Angular apps, but the app started to speak to me. It wanted to do more and when doing more the app needed some structure. Pretty soon […]

Browsing to a Simple Web Server on a Mac from Sublime Text


Lately one of the computers I have been using is a Mac Air with the Haswell chip. The combination of the Mac Air’s sleek and lightweight design along with the super long life and power of the Haswell chip is just fantastic! I’m using both OSX and Windows (in Parallels) and I spend most of my time on the Air in Xcode, Sublime Text, and Visual Studio (also tinkering with AppCode from Jet Brains … but more on that later). When I want to write and test some quick HTML/JavaScript/CSS that requires a web server on the Mac Air I […]

Learn Breeze


It is no secret that I am a huge fan of Breeze as I use it as a core component in my web applications and I use them extensively in my SPA courses. And now the first in depth training on Breeze has hit Pluralsight. My friend Brian Noyes recently published his Building Data-Centric Single Page Apps with Breeze course and it truly is tremendous! Brian’s course covers the full gamut of what Breeze can do for you, such as formulating rich queries on the client side (filtering, sorting, and paging) that get executed on the server side, saving changes […]

Angular Workshop and an Xbox One?


If you want to learn how to build a SPA with Angular with me (and get an Xbox One), register for my SPA workshop at AngleBrackets and DEVIntersection and use code PAPA to get $50 off the conference registration! I hear workshop attendees can get an Xbox One too just for registering for a workshop! We’ll cover syntax, but we’ll focus on how to ask the right questions and what choices are important to make as we demonstrate the techniques. Ward Bell (1 brilliant mind behind Breeze) will be guest starring and frankly there isn’t a data or business problem […]

Enjoy More Productive and Less Meetings


Does your calendar resemble a Tetris board? Do you spend more time in meetings talking about what you are going to do than the time that you spend actually doing it? You’re not alone. There are some simple ways to reduce the time you spend in meetings and make them more productive. I’ve changed the way I look at meetings it has really helped relieve my time so I can spend more time getting things done. So what destroys meeting time? Here are a few common issues that need to be squashed: The Comfy Pillow The 5 Year Old Soccer […]