Solr as a NoSql Database
First let me say that I have spent most of my professional career working with SQL databases. In fact, I have made a career out of being good with data and SQL. So when I heard about noSQL I just dismissed it as crazy talk. What self respecting web application developer would build a modern web app without a database! Me. I did. And I have to say that noSQL is powerful. It is not a replacement for SQL, but it is a very powerful tool that is better suited to many web applications than a SQL database. Am I throwing away all of my SQL books? No, but SQL is not the only tool I have now for powering dynamic web applications.[Full article]
Why server side HTML rendering?
Why do server side HTML rendering? Is that a throw back from the days when there were few web standards and desktops were slow and and could not handle complex DOM manipulations? Why not make Ajax calls to get JSON and inject the data directly into the page? Why not let the the JavaScript handle translating data into HTML? Why should modern web application development continue to rely on server side HTML rendering instead of pushing that to the client? [Full article]
Functional Programming
Every once in a while you come across a thought that changes the way you write code. Functional programming has been one of those paradigm changes. I guess the reason why I am so excited about functional programming is that as I have grown as a professional developer I naturally found myself solving problems in a functional manner. I think it is a good thing to systematicly solve problems. Not every architecture or problem is a good fit for a functional approach but I do think that most programming could be greatly improved by solving problems aware of the paradigms that functional programming adheres to.[Full article]
What is a closure?
A closure is a mechanism that allows functions to gain access to variables that are outside of the functions definition while maintaining functional purity. But wait - doesn't functional purity mean everything is encapsulated in the function? How can this be? [Full article]