Saturday, May 23, 2015

Microsoft Dynamics CRM Mindmap (WIP)

I'm working on a mindmap to help a customer understand what is inside MS Dynamics CRM 2013. It is coming from multiple sources and the aim is that it becomes a usable reference for describing the possibilities of the product.

It might help you. Please feel free to share and adapt but I'd ask that the originator and disclaimer attributes remain intact. If you want to feed anything back to me or share your edits, that would be nice.

Here's jpg preview. I'll try to remember to update it as I change the map.


The .mm file is here. Mindmap file.

You will need freemind. It's available for windows and linux and there's a viewer for Android. Apple muffins, you are on your own.

It is very much a work in progress. The sales and marketing nodes a pretty well complete but there is loads more to come. Bookmark it and come back. I'll be updating it as I get time.


Tuesday, May 19, 2015

Readable jquery



I'm doing some JQuery stuff and for a person of simple tastes the readability of nested function() definitions all written on one line is very poor. Debugging is a pain in the arse. So here's some modest proposals for maintanable code:

  • Assign callback functions to variables
  • Use the variable in place of the function (){...}
  • Format them as you would if it was a function with all the relevant curly braces and indents
This adds a few characters of 'weight' to the page, but these can be minified away for production code.  

Here's how I would do it:

<html>
<head>

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>

<script>
var showmess="Show";
var hidemess="Hide";
var show=function()
{
$('p').toggle();
if($('#showlink').text()==showmess)
{
$('#showlink').text(hidemess);
}
else 
{
$('#showlink').text(showmess);
}
}

$(document).ready(
function()
{

$('p').hide();
$('#showlink').text(showmess);
$('a').click(show);
})
</script>
</head>
<body>

<h1>Hello</h1>
<p>You can't see this</p>

But you can see this.

<a href="#" id="showlink">&nbsp;</a>
</body>
</html>

As you can see I'm a bit of a traditionalist with my curly braces. My training manual when I started c programming was K&R C Programming Language and I've never really got out of the habit of matching brace indents.

Saturday, May 9, 2015

Romania and the Ceaucescu thing

I've been having an extended stay in Bucharest. I have got a smattering of the language, though it is a bitch, using no personal pronouns and definite and indefinite articles seemingly at random. And the gender thing is a bigger mess than an explosion in a jelly factory.

I've been drinking in a couple of bars and am sort of accepted into the conversation. A lot of people speak English and it's they are in general a friendly bunch. My favourite drinking place is the cafe at Cismigiu park.

When I arrived in mid-April the talk was all of the imminent Russian invasion of Moldova, which the Romanians would be obliged by various ancient alliances to defend. It didn't happen and it is no longer the topic. When the threat lessened we talked about Ceaucescu. There is a surprising amount of respect here still among some of the older people who remember what it was like.

Here's the perception of him I was given:

He was a bit of a peasant and culturally ignorant. He very hostile to non-ethnic Romanians, at his 'trial' he was accused of genocide, with reference to the putting down of the revolution. (There doesn't seem to be any evidence to support genocide* in the true definition IMO.) He suppressed all worship except that for the state. He destroyed much of the cultural heritage of the country. He was corrupt and lined his pockets. He did not tolerate opposition and was implicated in disappearing people who he didn't like. Looking at most political systems that all seems an extreme form of normal behaviour.
All sounds pretty grim until you compare the Ceaucescu years to now. The poverty here is astounding. The biggest industry seems to be collecting plastic bottles from bins into massive bin bags and getting a few lei for recycling them. The number of presumably homeless people living on the streets is  growing and there are slum areas. I mean proper shanty towns that were mainly cleared but are creeping back. The perception here is that homelessness and joblessness were both less under Ceaucescu. There was no greater wealth but people had jobs and roofs over their heads.

He achieved this by massive building and infrastructure projects created by what we would now call slave labour. If you were jobless or homeless you were drafted in to building one of Ceaucescu's follies. Some of which are still not finished and remain as monuments to the 'bad times.' The fact of the matter is though that the revenue generated by using poorly or unpaid (my informants were ambiguous) paid for them all and their families to be fed and housed. Not to great luxury but warmish, dryish and fed.

He also over a period of 10 years stopped international borrowing and upped exports (at some cost to the population) and cleared the national debt.

The student revolution in Timisoarena objected to a lot of the bad stuff he was doing, quite rightly. Particularly the poverty and food shortages brought about by the export of agricultural produce. Their big gripe was the slavery that was at least generating cash to keep people fed and housed. They bought into the magic money tree theory of economics. The turning point was the possible suicide of an army general which was widely speculated to be an execution and this caused the army to defect to the revolutionaries.

The current perception is that things were better with him than without him. I was drinking with people who could afford to drink in the park so this is not a fair sampling of the population.

All the preceding is culled from conversations over coffee and beer. I have no idea of the facts and some of the people I was speaking were not contemporaries of Ceaucescu.

Incidentally the graves are well tended and always seem to have flowers.

And now the payback is a country (or at least the capitol city) in real trouble. The second biggest industry is security guards. Shops, supermarkets, hotels, everywhere. And all ground floor windows are generally barred and or shuttered. There is a sense of desperation. Begging is a way of life. So is stealing. I walk with my "no, fuck off" face permanently set in place. It's still mainly safe, I was only subjected to aggressive begging once but he was drunk and is probably still wondering how he ended up on his arse, but there are some areas, like around the Gare de Nord that made me just a bit nervous. There is a big solvent abuse problem here. And used hypodermics litter the streets in the shadier areas. It was a big shock to have on of the street cleaners beg from me but she took a break from sweeping and stuck her hand out.

If you can live with the grinding poverty everywhere and the Romanian way of doing things it's still an interesting city to visit. It feels different to London, Paris, Amsterdam and even Prague. And the country is even better.

So my questions are:

  • Could he have achieved what he did without all the bad stuff?
  • If he could, how would history perceive him?
  • If you can only support your population by paying them in housing and food for civic projects, is that an acceptable thing to do?


I don't have any answers. However, I think the last question is a question a lot of countries might have to consider in the not too far distant future.

Genocide:the deliberate killing of a large group of people, especially those of a particular nation or ethnic group.