Ozzie.eu

Love to code, although it bugs me.

Showing posts with label nosql. Show all posts
Showing posts with label nosql. Show all posts

Free eBooks: Python, JavaScript and UI Design

6773415631_7cab96b8d9_m
Working on the application development scene, it’s hard to keep up with everything new. Every bit of help counts. Great resources are the eBooks you can find, for free, online on the Web. The books you can find in PDF format are great because you can take them with you anywhere. The ones that are available to view online are also great because you get any updates made on the subject. On this post I leave everyone a small set of links where you can find eBook compilations.
The first one comes from Speck boy Design Magazine and it’s mostly about User Interface design. For instance, the Mobile Web Design Best Practices by Mobify “is a handy mobile web design guide with over 50 tips that will help you build amazing mobile websites”. You can visit the Specky boy eBook compilation here: http://speckyboy.com/2013/06/10/free-ebooks-for-designers-and-developers/
The next eBook compilation is from Revolunet. It’s all about the Python programming language. You have the classic “Dive into Python” and a whole bunch of other interesting books. You can find them all at this Web page: http://pythonbooks.revolunet.com/
Finally, this list wouldn’t be complete without the emerging trend on multi-platform application development: javaScript. Here you have subjects for all tastes: Node.js, MongoDB, Windows 8, and so on. Get them all on this page: http://jsbooks.revolunet.com/
Happy readings!
Photo Credit: Mark J P via Compfight cc

Application Data Access – closing the circle

Applications and data access development have come a long way and curiously now is the circle closes.
In the early years an application’s code was merely a reflection of the data it was meant to store and retrieve. For instance, a COBOL commarea from a program meant to access data on IBM IMS database had the structure that mapped to the data, on it’s various possibilities. Alongside with the CRUD methods implementation.
http://knowledgebase.progress.com/servlet/rtaImage?eid=ka030000000OCWd&feoid=00N30000007b7vf&refid=0EM30000000TgHg
If you wanted to search through the data, you had to develop the code for it. That was achievable to the developers but consequently no Ad-hoc queries were possible for the end-users. Business intelligence was nothing but some pen and pencil with big paper stacks.
Then came relational databases. The Relational model, first proposed in 1970 by Edgar F. Codd, departed from this tradition by insisting that applications should search for data by content, rather than by following links. This was considered necessary to allow the content of the database to evolve without constant rewriting of applications.

Relational systems placed heavy demands on processing resources, and it was not until the mid 1980s that computing hardware became powerful enough to allow them to be widely deployed. By the early 1990s, however, relational systems were dominant for all large-scale data processing applications, and they remain dominant today.
The dominant database language is the standard SQL for the Relational model, which has influenced database languages also for other data models.
Finally to make my point about what this post is about, comes the trend of handling large data stores with NoSQL. It does not use SQL as its query language. NoSQL database systems rose alongside major Internet companies, such as Google, Amazon, and Facebook, which had significantly different challenges in dealing with huge quantities of data that the traditional RDBMS solutions could not cope with.
image
NoSQL database systems are developed to manage large volumes of data that do not necessarily follow a fixed schema. Data is partitioned among different machines (for performance reasons and size limitations) so JOIN operations are not usable and it differs from the early days IMS hierarchical database because ACID guarantees are not given.
Nevertheless, we’ve gone back to key/object systems with little flexibility, highly optimized for retrieve and append operations and often offer little functionality beyond record storage.
I state again that data development has gone full circle.