Archives

Simple.Web 0.6 release

  1. Massive performance improvements to the pipeline (special thanks to Mattias Nordberg)
  2. Integration with JSON.NET
  3. Upgrade to Razor v2 engine
  4. Visual Studio Intellisense for Razor views
  5. Support for Razor layouts, sections, and view-bag
  6. Improved Razor view generation performance
  7. Compatibility with Mono v2.11+ (including v3)
  8. New build process and solution management
  9. Continuous Integration builds for MSBuild and Mono, including featue branches and your GitHub pull-requests
  10. Lift to OWIN 1.0 specification
  11. NuGet improvements for low-friction usage
  12. Improved error handling via FIX for IIS
  13. Various bug fixes

We still have yet to complete support for Razor partials and HTML helpers but efforts have focused on stability and performance, indeed we believe Simple.Web (in terms of requests per second) is becoming one of the fastest web frameworks available. It's also recognised with the continued popularity of client-side MV* frameworks that server-side view engine generation may no longer be the priority for many consumers, but fast and easy integration with a server-side API is - and thats surely Simple.Web's sweet spot!

If you have any issues or need something, please do raise an issue, we'd love to hear from you :-)

NuGet package restore using nugets targets on Mono with xbuild

NuGet package restore does work on Mono with xbuild, but you may find some *nix builds fail because the imported target that uses $(SolutionDir) fails on Mono due to a double forward-slash in the path. As xbuild doesn't support property functions I found this crued solution ensures Visual Studio doesn't re-add the import line but does allow xbuild on *nix to complete.

<Import Condition="$(MSBuildProgramFiles32) == ''" Project="$(SolutionDir)\.nuget\nuget.targets" />
<Import Condition="$(MSBuildProgramFiles32) != ''" Project="$(SolutionDir)\.nuget\nuget.targets" />

If you've found a better solution let me know :-)

Ubuntu TeamCity Mono Build Agent

Some quick notes from setting up a TeamCity mono build agent on Ubuntu.

Passing build properties with FAKE (F# Make)

Working to compile Simple.Web on Mono this week needed to pass properties to xbuild via build tool "FAKE" (F# Make), although the solution applies equally to Windows/MSBuild.

Git mergetool with Araxis on Mac OS X

I've posted before how to configure git so 'mergetool' uses Araxis Merge, this was however slanted heavily towards a Windows installation. Doing the same for OS X isn't that much different but does require an extra step.

Using NuGet with Mono

Found myself wanting to use NuGet under Mono today and thought I'd share;

  • Download the NuGet BootStrapper from nuget.codeplex.com/releases
  • Tell Mono certs to trust when doing https: mozroots --import --sync
  • Use an environment variable to enable package restore (suggest shell startup): export EnableNuGetPackageRestore=true
  • Install NuGet (via BootStrapped) into location (~/.local/shared/NuGet):
    mono NuGet.exe
  • Create a nice bash script to run from console:
#!/bin/sh
exec mono --runtime=v4.0.30319 --gc=sgen "/users/ian/.local/share/NuGet/NuGet.exe" "$@"

BISH BASH BOSH!

Do what you love! Don't settle.

"Do what you love! Don't settle." -- Steve Jobs, Stanford 2005 Commencement Address

I always find it amusing when my mind evolves its thinking to a point of self-proclaimed wisdom only to then realise somebody in my life has been telling me just that all along.

No "I" in team.. or in building great ideas

Reflecting on my posting about my early days writing software last night, and in particular my then crowning achievement - NodeManager v1.00, I suddenly felt quite ashamed - this is why:

When SysOps stay up late at night

Whilst ranting about the inadequacies of Apple's OS X Finder on Twitter last night I joked how a version of XtreeGold - even as a 25yo technology - might be better! It didn't take long before I began reminiscing about the good old days of DesqView and running Bulletin Board Systems, and the pioneering innovation behind it.

Rewarding your team

Encouraging participation and contribution to the community

I’m one of those managers who believe your team being involved in ‘the community’ is of excellent benefit not just to their own personal growth but also the quality of software they produce; I also believe lack of recognition of this only leads to demotivate or worse - high staff turnover. We have several schemes in-house to reward or compensate for personal time spent including reimbursement of expenses to ‘events’ and in the case of all-day attendance a day-in-lieu. I now don’t think this is enough to /encourage/ participation and contribution back to the community.