Wednesday, 9 April 2014

Overzealous Security - Password Pain

I was just registered to comment on a website and my simple password (9 characters two alpha 6 numbers and 1 special char) was rejected as being too insecure.

It needs to have at least one Uppercase letter apparently.

Sigh.

What are you protecting here? I just wanted to post a comment – not open a bank account.

Plus, why if I signup with twitter do you want basically access to EVERYTHING?

image

Wow I’m glad that they don’t get my twitter password at least!

Monday, 7 April 2014

To disavow or not to disavow

I just got an email from zoho asking that I remove or change a link to no-follow because some Google algorithm decided that the link was unnatural.  Sigh. 

The link is natural, I wrote the article.  I wasn’t paid anything.  No shady link buying business.  This is just getting silly.

I removed the link, I’m not going to cause the poor guy emailing me a lot of grief, but I think that this is going too far.

What do you think?

The Current state of Affairs in Cloud NoSQL

In my previous projects I have found a strong preference to avoid a Traditional SQL database backend.  Too often the impedance mismatch simply costs too much when rapidly iterating a design.  Going with a schema less design is fantastic and frankly really hard to give up.

My last major project was meant to be a ‘internet scale’ service - which basically needed to be able to handle vast traffic increases without falling to pieces (I cringe just reading that sentence!).  Yes – it was one of those projects and I should have jumped out of the boat upon hearing the expectations!)

Moving on…

Early versions of the service were built on the newly launched Azure Table Storage.  I ended up not waiting for the Secondary Indexes (Good thing too because that feature, promised in 2009, is still missing 5 years later!) and made a hybrid SQL / Table combination.  It appeared good on paper and it was seen as a good compromise.

The problem came from the cost of maintaining my indexes for search etc.. Basically I found I was simply working at too low a level of abstraction and trying to hide the underlining implementation was just adding too much mess in my projects.

6 months later the code was ditched and a more traditional standalone database server was adopted.

This all happened a while ago and those design decisions are fairly set in stone.

Fast forward to today and I am once again checking out what is new in cloud land for a new project.  I am surprised by Azure’s apparent lack of care for their NoSQL table storage solution.  It seems, in my opinion, that they are chasing the brown field projects more than new ‘green field’ ones. 

I don’t have any stats for this but maybe the real problem with proprietary NoSQL solutions is that developers are shy about lock-in.  I know it is something that I worry about.  Can I move my service/web site out of this cloud and into another?

 

image

Google’s Cloud Services

I don’t know how I missed all of the cloud services Google is currently offering.  They have a NoSQL database which apparently launched in 2013.  I guess I have been in Microsoft Land for too long.

Some Feature Highlights:

  • Auto Scale
  • Schema less
  • SQL-Like Querying
  • ACID
  • Redundancy (geo-replicated)
  • REST Interface
  • Very affordable pricing (at least it appears to be)

Some early questions/concerns:

Nuget packages for C# don’t indicate a lot of C# users

image

Can I store JSON documents? Does it support Full Text Search? Is there LINQ support for querying?