My self and the good lady wife are currently holidaying on there island of Madeira, and we’re having a great time. While out for an evening stroll we spotted these wonderful balancing stones – which I photographed this morning.
Mysterious stone columns
And it got me thinking about application architecture.Take this pile of stones.
Three layers of stone architecture
At first glance it looks pretty cool right, and it certainly is a great of engineering. But it’s pretty hard to replace the top layer. Put on a layer that had a different weight distribution and the whole stack becomes unstable. And the lower down the stack you attempt to replace a layer, the greater the difficulty involved, as that layer and every layer above it is affected by a change.
From a software point of view what does it mean then?
Well each layer is built depending on the layer(s) below it. In software terms it would be like the business layer opening and holding a SQL connection and transaction and then calling multiple data layer calls using that connection and transaction. The business layer has knowledge and a dependency on the data layer. A better approach would be to handle idbconnection and idbtransaction objects, but what about a web service layer?
I’m not an architecture expert, so this is something I’ll have to think about, but I think it might make an interesting article for the internal newsletter at work.
Knowledge server down…
Other companies might call them web servers… not Three.
I’ve subscribed to a new podcast recently. I go through periods of engagement and disengagement with genealogy, and at the moment i’m pretty engaged – probably because my Ancestry subscription is about to renew.
Anyway I received an email from Ancestry last week telling me that they had developed a podcast show with Tony Robinson, and that the first few episodes are available to download. So I fired up my trusty podcatcher software – BeyondPod – and hunted around looking to subscribe –
The page for the podcast is here.
I thought I’d look at the instructions to subscribe to the podcast through this handy YouTube video that ancestry has thoughtfully put on the page.
But as an android user it seems that I had to download a podcast tool called Stitcher. Really all I wanted was the RSS address – so I tweeted ancestry, as I couldn’t find the address anywhere.
I then browsed the site using a laptop, and lo and behold : RSS icon. As Ancestry UK says – it looks like the RSS icon is missing from the mobile interface.
Viewing the page on deektop – RSS icon
RSS icon missing when viewing the page in mobile
I’ve downloaded the episodes – and I’ve listened to episode 3 so far on my way into work so far.
I did spot that there were issues with Tony’s script though – at roughly 25 seconds in :
“…It would be unusual to read anything about the drive for voting rights for women in Britain without seeing mention of the Pankhurst name. That’s not just down to sisters Christabel, Sylvia and Adela though. Their mother Emmeline was the founder of the women’s social and political union and she lead the British suffragette movement in the early 1900’s. Their Mother Emmeline was the founder of the women’s social and political union and she lead the British suffragette movement in the early 1900’s.”
Looks like there was an editing issue with episode 3. The audio quality for episode 3 certainly seems lower than the other episodes.
Nice touch though : Mark Hamil is in Episode 4 !!!
I’m currently doing research and revision for my 70-487 exam – Developing Microsoft Azure and Web Services. I was doing some reading and I encountered some information about hosting WCF Data Services and OData. It wasn’t something I had encountered in so far – so it has been an interesting and exciting prospect to look into.
I found a wonderful step by step tutorial into creating and hosting a WCF Data Service on MSDN, so I went through it.
First problem : I need some data. I’m quite getting into LocalDB at the moment – I’m thinking about the possibility of creating a developer database through migration scripts – so that a developer could clone a Github repo and run the project. The Database would be automatically created for them, and populated with sample data (if appropriate) – meaning that developers could run this project without a dependency on a database or fancy storage like that.
I managed to get the SQL Scripts for Northwind from codeplex – but with almost everything that Microsoft does these days being on github – going back to codeplex seemed old and outdated.
I followed through the instructions and ran the project.
OData seems to be very similar to REST – except that the url used are representative of the entity structure(rather than hiding behind controllers), and query like operations can be passed through to the server – giving maximum flexibility in terms of usage. So – anyway… I ran my project from Visual Studio 2015.
Metadata from my WCF Data Service
Yay – I have metadata about my service.Next step was to view the contents of the customers service by subtly altering the URL to add Customers to the end.
And then this happened :
Customers can’t be downloaded?
A pop up from Edge saying that Customers couldn’t be downloaded? That can’t be right. Let’s have a look at the same thing on Chrome.
Loading the Same OData service on Chrome reveals lots of lovely data.
So what’s going on here – my service works fineunder Chrome – but fails under Edge? Only Edge? How about IE
Acessing the OData Service on IE does present data – which IE interprets as an RSS feed.
It does seem to show the data under Internet Explorer – so it just appears to be the Edge Browser which is causing the problem. Next up – let’s run the network tab, and we’ll see what’s shaking.
Requesting the OData Service is stuck at Pending
So – notice that the result is still pending? In comparison navigating to http://localhost:50739/NorthwindCustomers.svc/ returns the following:
Accessing the OData Metadata on MS Edge does seem to return (response code 200)
Currently I’m working under the theory that Edge just doesn’t understand an element of the communication received. Given that the same service is being used for all browsers, then the issue is down to how Edge interprets some header received from the server.
Next up : I’ll record the headers that are returned from the service and see if I can determine a difference between the browsers – until I learn more though, I’ll have to work under the assumption that Edge just won’t work with this stuff
I needed to sign the agreement for my home insurance – so I popped onto mypremiumcredit.com
Signing a credit agreement on PremiumCredit
I wanted to read the terms and conditions, so I clicked on the terms and conditions link…
Whoops – Now – that looks like JSON.
Will be letting the technical contact for the site know.
A display stand containing only things that cause long term health problems…. Cigarettes and Windows…. Cant help thinking that Oasis might have had more success with that instead of Cigarettes and Alcohol.
Thanks to roving error reporter Adam Cutler for this!.
Spotted Anglia Ruskin University 9/7/2016
The… needs an update…bit of an issue with layout here
Ohhh…blue screen of despair…
My pc is so sad….
My pc crashed …never seen a windows crash screen on windows 10 before
Just thought I’d pop this here. I’m working on a snap.svg application that allows the user to drag staff members between desks. I’ve got the dragging working, just need to figure out how to snap to elements.