Jay Little
logo
PEngine4 MVC coming soon!
Post Icon

12/13/2012 16:32:00

While it might appear that the engine driving this site (aka PEngine) has been allowed to atrophy and die over the last few years, nothing could be further from the case. I've spent a great deal of time over the last few weeks slinging code for the upcoming update of the software which will be version 4.0. Not only has the codebase has been largely rewritten from scratch, but the software will now be an ASP.NET MVC4 application. In addition to that it contains numerous other changes:

[1] All of the admin interfaces as well as some end user interfaces will now be rendered dynamically on the same page as the content you are editing using handlebars and ajax calls to read/write/delete the data. This has resulted in a very much improved administration experience and manages to resurrect some of the convenient capabilities from PEngine 3.0 involving being able to log back in without losing your work after your session times out and you attempt to make a change.

[2] The back end database has been upgraded. After 12 years of using MS Access as the back end (with lots of caching protecting it from DoS conditions originating from the front end) the time has come to transition to something better. In this case that something better is SQL Server Compact. The system will be redesigned to automatically convert any data in the existing access database into a brand new seamlessly created SQL Server CE database when the app first launches so the transition should be seamless. In addition the database interfaces have changed. Rather than making use of a custom data layer, PEngine now makes use of Microsoft's Entity Framework. Yes it was a pain. We laughed, we cried and somewhere along the way we learned to live peacefully together.

[3] The application has been modified to take the constraints imposed by shared hosting environments into consideration. Namely this means that the app will now operate in medium trust mode without issue.

[4] There has been a cleansing of code and consideration for features that are never going to make it back into this application. Namely this involves the forum feature which as nobody will recall, was a big feature of the last ASP Classic release, 3.0. It was never ported to the .NET versions of PEngine because it seemed pointless. It seems even more pointless nowadays.

[5] Not everything is set in stone yet. I'm still grappling on whether or not to change the way the site renders basic control panel like features (theme, elite, login, print) by moving them into some sort of bar that sits at the top of the page rather than displaying them alongside the content buttons.

[6] In terms of progress here is where we are at: All of the content related displays and admin tools are pretty much done, minus a bit of tweaking here and there. The only items not yet started and/or complete are the the admin screens for configuring application settings and for managing content. So yes a release is pretty close. I see no reason why this site won't be updated to 4.0 by the end of the year and the downloads being made available. For this particular release I believe I'll be making two downloads available. One for deployment and the other for people interested in seeing the code. The primary reason being is that between Visual Studio 2012 and it's NuGet packages, the project itself is rather large. The deployment version is substantially smaller. No need to waste people's bandwidth that are only interested in using the app. I'm also considering publishing the code to github, but the logistics of that remain to be seen.

Note: I just got a session time out while trying to save this post. That is annoyance that I'm never ever going to experience again. Thank goodness!

Search:
[Top] [Rss] [Email]