From javacodegeeks:
"... articles about "Things Every Programmer Should Know" are occasionally posted. As stated in the author's first post, the 97 Things Every Programmer Should Know project, pearls of wisdom for programmers collected from leading practitioners."
read it
Rinaldo Bonazzo's Blog, outdoor passionate - sometimes likes to blog about Disruptive Technology #EnterprisePortal #BigData #Analytics #Cloud #Iot #node.js ...
Monday, December 13, 2010
Friday, December 10, 2010
It’s effort, not complexity
From Mike Cohn's Blog I suggest to read this post
It’s effort, not complexity
Thursday, December 9, 2010
What's New in Spring-WS 2.0?
From infoQ, Arjen Poutsma introduces Spring-WS, and shows what’s new in Spring-WS 2.0 using demos: an improved @Endpoint model, Spring 3 and Java 5++ support, full streaming, and integration test support.
Presentation on InfoQ
Presentation on InfoQ
Friday, December 3, 2010
Tutti pazzi per l’Open (Government) Data
Oggi vi suggerisco l'ultimo blog di Flavia Marzano pubblicato su wired.it
http://bit.ly/f8UbT7
http://bit.ly/f8UbT7
Wednesday, November 24, 2010
How to create a private cloud in your laptop
From the datacharmer blog:
Everybody is moving to cloud architectures, although not all agree on what cloud computing is.
Read it
Everybody is moving to cloud architectures, although not all agree on what cloud computing is.
Read it
Friday, November 19, 2010
Thursday, November 18, 2010
Agile Goal Setting
What does it really mean to set goals in agile? Get Jurgen Appelo’s take on the importance of shared team goals and how to avoid stakeholders asserting their individual goals over the team’s. He also provides a checklist and examples to help you determine if your goals are worthy of being goals.
Read Jurgen Appelo’s InfoQ article.
Read Jurgen Appelo’s InfoQ article.
Changing Agile Roles - The Managers - Agile Musings
Learn more about the types of managers on an agile team and the changes traditional managers need to be aware of to be successful.
Read Steve Ropa’s blog post.
Read Steve Ropa’s blog post.
Tuesday, November 16, 2010
Sencha Touch 1.0 Ships – Now Free!
It was finally released version 1.0 of Sencha Touch, JavaScript frameworks dedicated to mobile devices created by the company that has developed Ext.J
The great news is that Sencha Touch is now free to open source projects
The great news is that Sencha Touch is now free to open source projects
The Web Design Process Part 1: Discovery
New post on Sitepoint: The first in a series of three where you’ll look at how to get started with creating your web design layout. Read it
Tuesday, October 26, 2010
To-Do Lists: 10 Tips for Increasing Productivity
I wish to suggest you this SitePoint Alyssa Gregory post :
Rinaldo
Productivity is something we can all benefit from, and there are a lot of ways you can work to improve your productivity. To-do lists are one of many activities people use to become more productive and ensure nothing falls through the cracks. But there is a major divide when it comes to to-do lists. There are those who believe that lists help keep them accountable and on track, and those who believe that lists do nothing more than create an environment of stress.Read all the post from here
Rinaldo
Thursday, October 14, 2010
Traduzione in italiano del libro "Kanban & Scrum - making the best of both"
Fabio Armani ha tradotto il libro "Kanban & Scrum - making the best of both"
Potete scaricarlo seguendo questo link su InfoQ
Grazie Fabio per l'ottimo lavoro
Rinaldo
Friday, September 24, 2010
Apache2WebDavDigestAUTH
This article is a brief guide to setting up WebDAV on Apache2 in Ubuntu 10.04 (Lucid Lynx) with Digest AUTH enabled. Some of the guides already available around the web focus on Basic AUTH or provide partially confusing information about Digest AUTH (including the official Apache2 documentation).
Continue
Continue
Monday, September 20, 2010
jAPS 2.0 changed mailing list!
jAPS 2.0 changed mailing list!
Now you have to subscribe here: http://groups.google.com/group/japs-platform
as you can see we've switched from sourceforge to google groups, which is more versatile.
Friday, September 10, 2010
Apple Opens Up iPhone Development
From InfoQ:
Apple announced today that they "listened to our developers" and "we are relaxing all restrictions on the development tools used to create iOS apps, as long as the resulting apps do not download any code." They also announced that "for the first time we are publishing the App Store Review Guidelines to help developers understand how we review submitted apps."
Read all
Apple announced today that they "listened to our developers" and "we are relaxing all restrictions on the development tools used to create iOS apps, as long as the resulting apps do not download any code." They also announced that "for the first time we are publishing the App Store Review Guidelines to help developers understand how we review submitted apps."
Read all
Tuesday, August 10, 2010
Thursday, July 22, 2010
Exploring the software behind Facebook, the world’s largest site
From royal.pingdom.com:
Read it
At the scale that Facebook operates, a lot of traditional approaches to serving web content break down or simply aren’t practical. The challenge for Facebook’s engineers has been to keep the site up and running smoothly in spite of handling close to half a billion active users. This article takes a look at some of the software and techniques they use to accomplish that.
Read it
Wednesday, July 21, 2010
Java Performance tools
AppDynamics is the very first free product designed for troubleshooting java performance in production environments. AppDynamics.com
Wednesday, July 14, 2010
Today on twitter I receive this:
New blog post: Headless Cucumbers and Capybaras with Selenium and Hudson.Since selenium and Hudson are software that interest me more and more, follow the link and the presentation says.
Nowadays software engineers can’t live without their favorite test frameworks. But what a software engineer does not want is having to put a lot of effort in keeping these test run. Neither do teams of software engineers want to spent much time on making their test results visible to the entire team.made as I read it on http://blog.kabisa.nl
Thursday, July 8, 2010
The Tao of Scrum
The Underlying Tao
The Way is Transparent.
The Way should be Inspected.
What is Inspected should be Adapted to.
The Way is Transparent.
The Way should be Inspected.
What is Inspected should be Adapted to.
Read this Michael Spay post ...
Monday, July 5, 2010
Monday, June 28, 2010
Getting Started with JSON
JSON (Java Script Object Notation) is a light weight data-interchange format.
I suggest to follow this tutorial: JSON Javascript Tutorial
I suggest to follow this tutorial: JSON Javascript Tutorial
Tuesday, June 22, 2010
Google Command Line Tool
Google has introduced a command line utility for accessing various Factory services, including YouTube, Blogger, Google Docs, Calendar, and Contacts.
Read this.
Read this.
Monday, June 14, 2010
Tuesday, June 8, 2010
MySQL Workbench
MySQL Workbench is a great tool, useful for any MySQL administrator or developer. There is a lot more that the Workbench can do; it can be used to create and run scripts on data, it can do data modeling, and more. It is really a very powerful and versatile tool.
Download it
Download it
Friday, June 4, 2010
Pentaho Solutions
I'm reading the Roland Bouman and Jos van Dangen’s “Pentaho Solutions – Business Intelligence and Data Warehousing with Pentaho and MySQL”
So anyone who is interested or currently working with Pentaho I suggest to buy it.
Rinaldo
So anyone who is interested or currently working with Pentaho I suggest to buy it.
Rinaldo
Friday, May 28, 2010
bash brace expansion
In recent days working on a plugin for jAPS2.0 was a need to tell wget or curl to download files whose Several URLs conform to Certain patterns, looking on Google I found in the hanekomu's Perl Blog this help-full post
I suggest to read it.
Rinaldo
I suggest to read it.
Rinaldo
Wednesday, May 26, 2010
Getting Started with YouTube Java API
Youtbube provides an extended API, JavaCodeGeeks present a hands-on tutorial on how to get started with the YouTube Java API.
Read the tutorial
Read the tutorial
Saturday, May 22, 2010
MySQL Community Server 5.1.47 has been released
MySQL Community Server 5.1.47, a new version of the popular Open Source Database Management System, has been released. MySQL 5.1.47 is recommended for use on production systems. For an overview of what's new in MySQL 5.1, please see http://dev.mysql.com/doc/refman/5.1/en/mysql-nutshell.html
Friday, May 21, 2010
Creating Dynamic Sizing Charts with Pentaho Report Designer.
Another tutorial from Prashant.
In this one he explain us the Pentaho Report Designer’s (PRD) charting capability.
Read it.
In this one he explain us the Pentaho Report Designer’s (PRD) charting capability.
Read it.
Wednesday, May 19, 2010
How MySQL Powers Web 2.0
From MySql web site
An overview of how MySQL helps power Web 2.0 technologies and companies
Web 2.0 can be thought of as the technologies and web sites that leverage users and developers in a socially collaborative manner in order to rapidly develop data and applications with a high level of integration across platforms and other services.
MySQL enables up-and-coming Web 2.0 sites like Wikipedia, FeedBurner and digg, - as well as established web properties like Craigslist, Google and Yahoo! - to scale out and meet the ever-increasing volume of users, transactions and data.
The information presented here will be valuable to entrepreneurs about to create their own Web 2.0 business, existing web properties wishing to bring their applications to the next level, but also to the large number of enterprises interested in leveraging Web 2.0 technologies. You will also gain an understanding of how MySQL can be used in conjunction with other open source components to deliver low-cost, reliable, scalable, high performance Web 2.0 applications.Read it
Monday, May 3, 2010
Exchanging partitions with tables
Last post from the Data Charmer blog, in this post Giuseppe explain in details the new feature instantaneous exchange between a partition and a table with the same structure.
Read it
Read it
Tuesday, April 27, 2010
Introduction to MySQL 5.5
In this John Russell's article you can read about speed, scalability, usability of the MySQL database and the InnoDB storage engine.
Read more.
Rinaldo
Read more.
Rinaldo
Thursday, April 22, 2010
Pentaho Report Designer and Excel Data Sources - Analyse This
In this tutorial Prashant show us that Pentaho Report Designer (PRD) can be an alternative to Mircosoft Excel, Access or other big BI vendors.
read it.
read it.
Tuesday, April 20, 2010
How to Identify an Apple iPhone, iPod or iPad Visitor to Your Website
Today I report an article where Creg Blucker with javascript and php examples explains how to catch the visitors of your site using Apple's iPhone, iPod or iPad.
Rinaldo
Monday, April 19, 2010
Open Source Reuse Rating Service
Through LinkedIn, I received an email reporting that Antelink has released the Beta version of it's 'Open Source Reuse Rating Service'.
On their blog you can find a summary about this project and a use case based on the Apache Commons libraries.
Read more...
Rinaldo
On their blog you can find a summary about this project and a use case based on the Apache Commons libraries.
Read more...
Rinaldo
Wednesday, April 14, 2010
How to implement UI testing without shooting yourself in the foot
From Gojko Adzic
in this post Gojko present what he consider a very good practice for how to do UI test automation efficiently.
How to implement UI testing without shooting yourself in the foot
Rinaldo
in this post Gojko present what he consider a very good practice for how to do UI test automation efficiently.
How to implement UI testing without shooting yourself in the foot
Rinaldo
MySQL :: Top Reasons to Use MySQL
MySQL® database maybe the world most popular open source why?
MySQL :: Top Reasons to Use MySQL
MySQL :: Top Reasons to Use MySQL
Tuesday, April 13, 2010
Install Open ERP 5.0.6 on Mac OS X 10.5.8 Leopard | Christopher R. Shackleton, MD
From Cristopher R.Shackleton I suggest you this post
Install Open ERP 5.0.6 on Mac OS X 10.5.8 Leopard
Install Open ERP 5.0.6 on Mac OS X 10.5.8 Leopard
Saturday, April 10, 2010
Intercept null value on a query
These last days working to create a Pentaho report with openERP data, I came across a serious problem:
if a query return a null value arithmetic operations are in error. The question was how to intercept the null value, surfing on Google I found this
Again surfing on Google and I found COALESCE
The postgresql manual say:
Finally my problem was solved my query now is something like this
SELECT COALESCE(sum(aal.amount * -1) , 0) FROM account_analytic_line AS aal WHERE (aal.account_id=83) and aal.journal_id = 3
Rinaldo
if a query return a null value arithmetic operations are in error. The question was how to intercept the null value, surfing on Google I found this
SELECT IFNULL (1,0) this query return 1Fine my problem was solved NO!! openERP use postgresql and postgresql doesn't support IFNULL
SELECT IFNULL(null, 0) this query return 0
Again surfing on Google and I found COALESCE
The postgresql manual say:
The COALESCE function returns the first arguments of ITS THAT IS NOT NULL. Returned is null only if all arguments are null. Often it is used to substitute a default value for null values
Finally my problem was solved my query now is something like this
SELECT COALESCE(sum(aal.amount * -1) , 0) FROM account_analytic_line AS aal WHERE (aal.account_id=83) and aal.journal_id = 3
Rinaldo
Thursday, April 8, 2010
5 Levels of Agile Planning: From Enterprise Product Vision to Team Stand-up
To day I need to suggest a paper that evaluates agile practices when applied in multi-team and multi-person-year projects. Download it here
Rinaldo
Rinaldo
Wednesday, March 31, 2010
Scaling Java EE Applications
In this article, Wang Yu takes real world cases as examples to explain ways on how to scale Java applications based on his experiences on the laboratory projects, and at the same time, bring together practice, science, algorithms, frameworks, and experience on failed projects, to help readers on building high scalable Java applications.
Tuesday, March 30, 2010
BI Server & MS Active Directory in 10 minutes
During Pentaho presentation a lot of people ask me "how to connect Pentaho to MS Active Directory for user authentication/authorization".
So searching on the web I found this very helpfull Sergio Ramazzina post
Rinaldo
So searching on the web I found this very helpfull Sergio Ramazzina post
Rinaldo
Monday, March 29, 2010
Is there an alternative to PDF Creator in ubuntu?
The answer is yes.
Just install the package cups-pdf and configure the new virtual printer.
Just install the package cups-pdf and configure the new virtual printer.
sudo aptitude install cups-pdfGo to System Menu > Printers
- Choose New Printer;
- In the dialog box will appear virtual Generic CUPS-PDF Printer, select it;
- Continue forward and give a name to the the new printer (Print-PDF will be fine);
- Print test page .
All the printed pdf will be saved in the folder named PDF in your home folder.
Rinaldo
Wednesday, March 24, 2010
OpenERP Technical Memento v0.6.3
OpenERP Technical Memento v0.6.3 released
Changelog:
[ v0.6.3 - 2010/03/22 ] * Added mention of __openerp__.py for v5.2 * Corrected OSV generic accessor example * Improved ORM usage example: indentation, osv name and use of context * Corrected '--relaxng' argument in tip about grammar * Corrected tree/list example to include state field for colors * Added default value for day_length in calendar view * Minor typos and formatting
Monday, March 22, 2010
Weka 3: Data Mining Software in Java
Weka is a collection of machine learning algorithms for data mining tasks. The algorithms can either be applied directly to a dataset or called from your own Java code. Weka contains tools for data pre-processing, classification, regression, clustering, association rules, and visualization. It is also well-suited for developing new machine learning schemes.
Friday, March 19, 2010
Pentaho CDA - Community Data Access
have a look at Pentaho CDA an idea from Pedro Alves. The project is available here on Google code. He gave announcement about this two months ago in his blog and it seems interesting.
Have a nice week end
Rinaldo
Have a nice week end
Rinaldo
Wednesday, March 17, 2010
Secure MySQL Database Design
Currently I am working on a project that used MySql. The database needs to be secured by searching the net I found this article written by Kristy Westphal dating from 2003 but still current.
Rinaldo
Rinaldo
Tuesday, March 16, 2010
jAPS 2.0 version 2.0.10 Released
jAPS 2.0 version 2.0.10 has been released on Sourceforge, where are available the following packages:
jAPS version 2.0.10 also includes:
Links
(via jAPSPortal.org)
- jAPS2.0-2.0.10-src
- jAPS2-0-2.0.10-PortalExample-Project
- jAPS2-0-2.0.10-PortalExample-Standalone
- jAPS Official Plugin: as usual, all those plugins that were modified to work with the new release of jAPS are released as well; the remaning are intended to be fully compatible
jAPS version 2.0.10 also includes:
- MySQL scripts
- Search by page code in Page Management
- Update of moo-jAPS library
- Two new fields in CMS contents: the version and the username
- Translation of Javadoc notes in the source code
- Update of contents preview
- Links to a page with the current stable version number in the back office
Links
(via jAPSPortal.org)
JavaPassion MySql Course started
The MySQL® database is "The world's most popular open-source database" and for good reasons. It provides fast performance, high reliability and ease of use. MySQL runs on more than 20 platforms including Linux, Windows, Mac OS, Solaris, HP-UX, IBM AIX, giving you the kind of flexibility that puts you in control.
So if you want to know more about MySQL I suggest you to have a look at the Sang Shin course, www.javapassion.com/mysql
Monday, March 15, 2010
Apache Pivot
The Apache Pivot platform for building rich Internet applications (RIA) in Java has become a top-level project.
Thursday, March 11, 2010
Code Bubbles
Rethinking the User Interface Paradigm of Integrated Development Environments.
8 minutes free? Enjoy this presentation
8 minutes free? Enjoy this presentation
http://www.cs.brown.edu/people/acb/codebubbles_site.htm
Rinaldo
Wednesday, March 10, 2010
Db and Pentaho video tutorials
Today I present you a very useful site for all those who want to start using MySQL and Pentaho
Rinaldo
Rinaldo
Monday, March 8, 2010
Emailing Reports from the Pentaho User Console.
Prashant Raju present a quick tutorial on how to use a new feature of 3.5.2 which allows end users to email reports directly from the Pentaho User Console (PUC).
Sunday, March 7, 2010
JasForge : the agility in the software development revealed !
Today I want to present a French product JasForge.
It allows sharing the source code of the projects, tracking bugs, storing and sharing documents, discussions and communications in a common area.
Moreover, Jasforge is a framework of collaborative development which can be installed and used in various contexts.
Jasforge originality come from the fact that the project is based on standard Open Source tools which collaborate together to form a unified solution which follow the development practice of a Continuous Integration process.
Jasforge solution will help to organize software project processes, improve schedule management, increase software delivery quality and facilitate collaboration between project teams.
In order to carry out these objectives, Jasforge aims
- To integrate several tools of the open source world to carry out all the considered features.
- To implement a module that manages user’s profile in all the system.
- To Develop a GUI for administration and users that has to be friendly and ergonomic.
To summarize Jasforge must provide a common access point and unify all the tools necessary for the establishment of a platform for collaborative work using the techniques of continues integration.
First used concept: Continuous Integration
Jasforge follows the development practice of a Continuous Integration process which will increasev the quality of the delivery by improving the use of software development best practices.
Second used concept: Plug-in based architecture
The power of Jasforge is that it defines a Jasforge plug-in for each integrated tool. This will give it the capability to integrate easily new tools and versions and give the user the ability to define a customized Jasforge with his preferred set of tools. (The Jasforge architecture will be explained later).
Other Jasforge particularities
Jasforge is software that can be installed in any local or extended network or even in one single machine. Its installation will automatically setup a forge and by this way we avoid configuration time.
Other advantage is that Jasforge offer a friendly environment to interact with tools. That means that we can be a non-expert user and use the Jasforge solution.
Jasforge platform will offer a large range of tools and services needed daily by software development teams to supply high quality software.
The figure bellow illustrates features integrated in each module.
The particularity of Jasforge is it uses a continuous integration process. This assures the best practices of development and quality guaranty.
Hudson communicates with SVN to check a change in the project, if there any change, it launches a build, and we can also force a build manually.
Note That: the build can be an ANT build or a maven build. For Jasforge we use Maven build.
Hudson is a war file so it needs to deploy it in a server and to make a module to synchronize between Hudson and Jasforge.
Hudson contain different controller for each functionality like build or authenticate and we can call these controller from a URL. So we implement a process based on a HTTP communication and can call a function from Hudson and pass the different parameter in the URL.
For the authentication, Hudson use HTTP BASIC authentication to specify the user name and the password and can use the LDAP authentication because both Hudson and security Realms use the servlet J_Security_Check where we define the J_username and J_password.
If you need further information, contact:
- What is Jasforge?
It allows sharing the source code of the projects, tracking bugs, storing and sharing documents, discussions and communications in a common area.
Moreover, Jasforge is a framework of collaborative development which can be installed and used in various contexts.
Jasforge originality come from the fact that the project is based on standard Open Source tools which collaborate together to form a unified solution which follow the development practice of a Continuous Integration process.
Jasforge solution will help to organize software project processes, improve schedule management, increase software delivery quality and facilitate collaboration between project teams.
In order to carry out these objectives, Jasforge aims
- To integrate several tools of the open source world to carry out all the considered features.
- To implement a module that manages user’s profile in all the system.
- To Develop a GUI for administration and users that has to be friendly and ergonomic.
To summarize Jasforge must provide a common access point and unify all the tools necessary for the establishment of a platform for collaborative work using the techniques of continues integration.
- What distinguish Jasforge?
First used concept: Continuous Integration
Jasforge follows the development practice of a Continuous Integration process which will increasev the quality of the delivery by improving the use of software development best practices.
Second used concept: Plug-in based architecture
The power of Jasforge is that it defines a Jasforge plug-in for each integrated tool. This will give it the capability to integrate easily new tools and versions and give the user the ability to define a customized Jasforge with his preferred set of tools. (The Jasforge architecture will be explained later).
Other Jasforge particularities
Jasforge is software that can be installed in any local or extended network or even in one single machine. Its installation will automatically setup a forge and by this way we avoid configuration time.
Other advantage is that Jasforge offer a friendly environment to interact with tools. That means that we can be a non-expert user and use the Jasforge solution.
Jasforge platform will offer a large range of tools and services needed daily by software development teams to supply high quality software.
The figure bellow illustrates features integrated in each module.
The particularity of Jasforge is it uses a continuous integration process. This assures the best practices of development and quality guaranty.
Hudson communicates with SVN to check a change in the project, if there any change, it launches a build, and we can also force a build manually.
Note That: the build can be an ANT build or a maven build. For Jasforge we use Maven build.
Hudson is a war file so it needs to deploy it in a server and to make a module to synchronize between Hudson and Jasforge.
Hudson contain different controller for each functionality like build or authenticate and we can call these controller from a URL. So we implement a process based on a HTTP communication and can call a function from Hudson and pass the different parameter in the URL.
For the authentication, Hudson use HTTP BASIC authentication to specify the user name and the password and can use the LDAP authentication because both Hudson and security Realms use the servlet J_Security_Check where we define the J_username and J_password.
If you need further information, contact:
- Karim DJAAFAR (kdjaafar[ at ] jasmineconseil.com) the chief leader of this open source projet, which can be pleased to respond to your questions !
- me (Rinaldo Bonazzo rbonazzo[ at ]gmail.com).
Thursday, March 4, 2010
Maatkit Power tools for open-source databases
Maatkit, a set of command-line tool f not only for MySql, released under the GPL, written in Perl.
I will suggest it to all DBA.
List of commands:
I will suggest it to all DBA.
List of commands:
- mk-archiver Archive rows from a MySQL table into another table or a file.
- mk-checksum-filter Filter checksums from mk-table-checksum.
- mk-deadlock-logger Extract and log MySQL deadlock information.
- mk-duplicate-key-checker Find duplicate indexes and foreign keys on MySQL tables.
- mk-error-log Find new and different MySQL error log entries.
- mk-fifo-split Split files and pipe lines to a fifo without really splitting.
- mk-find Find MySQL tables and execute actions, like GNU find.
- mk-heartbeat Monitor MySQL replication delay.
- mk-kill Kill MySQL queries that match certain criteria.
- mk-loadavg Watch MySQL load and take action when it gets too high.
- mk-log-player Split and play MySQL slow logs.
- mk-parallel-dump Dump MySQL tables in parallel.
- mk-parallel-restore Load files into MySQL in parallel.
- mk-profile-compact Compact the output from mk-query-profiler.
- mk-query-digest Parses logs and more. Analyze, transform, filter, review and report on queries.
- mk-query-profiler Execute SQL statements and print statistics, or measure activity caused by other processes.
- mk-show-grants Canonicalize and print MySQL grants so you can effectively replicate, compare and version-control them.
- mk-slave-delay Make a MySQL slave server lag behind its master.
- mk-slave-find Find and print replication hierarchy tree of MySQL slaves.
- mk-slave-move Move a MySQL slave around in the replication hierarchy.
- mk-slave-prefetch Pipeline relay logs on a MySQL slave to pre-warm caches.
- mk-slave-restart Watch and restart MySQL replication after errors.
- mk-table-checksum Perform an online replication consistency check, or checksum MySQL tables efficiently on one or many servers.
- mk-table-sync Synchronize MySQL tables efficiently.
- mk-upgrade Execute queries on multiple servers and check for differences.
- mk-visual-explain Format EXPLAIN output as a tree.
References: Maatic web site
Wednesday, March 3, 2010
MySQL Sandbox
MySQL Sandbox is a tool that installs one or more MySQL servers within seconds, easily, securely, and with full control. Once installed, the sandbox is easily used and maintained, without using complex options.
Replicated and multiple sandboxes can be used individually or all at once
Have a look at this tool,created and initially developed by Giuseppe Maxia
Sunday, February 28, 2010
Optimizing db performance
A couple of weeks ago my colleague Daniel asked me tips and info on optimizing db.
Afficher en écriture latine
This is only a starting point, in future I will investigate Change Data Capture
Afficher en écriture latine
With the documentation I have, I found a certain number of techniques, some available on opensource DBMS and other only on proprietary DBMS.
- Indexing normaly when you query a table all the table data will be read (full table scan). Indexing data is like indexes in a book. So primary key is a special kind of index, it's the unique identifier for a row on the db. How to build indexes? the answer is not easy, but we must always remember that creating a db is not a project but an ongoing process.
If for example I want to get all the sales ordered by date I will create an index on date_sales field with descending sort order. In this way retrieving last week's sales won't be slow. - Bitmap indexing this is a sepcial form of index (unfortunatly not available on MySql) normaly used in columns with a low number of unique values gender, color, ...). The idea is to create for the distinct number of the values in the column, a bit projection is created. This enable faster access to the indexed values.
- Partitioning introduced in MySql 5.1 it's the capibility to slice a table into multiple physical pieces. For example a large table containing sales data can be partioned by year so that queries for a given year will be performed only on the portion of the data for the requested year.
- ...
techniques, use of products such as Kettle, Mondrian, ...
Good eveningRinaldo
Saturday, February 27, 2010
Nested Sets
It is often required to have tree structures, even if only to manage categories. A tree structure is a tree consisting of a single or multiple root which each node can have multiple nodes son, and that with infinite depth.
Generally the method used to do this is to have a unique identifier for each node of the tree, and insert the identifier of the father node in the registration of the node.
The disadvantage of this technique is that one is obliged to make a SQL query for each node to retrieve all the son of a node. We can improve that by downloading all the nodes in the database, and rebuilding the tree by hand using an array indexed by parent node.
This technique is not really suitable for very large tree structures of several thousands of nodes.
So why don't trying by represent the tree differently, not as a tree, but as Nested Sets.
Selection of all nodes is very simple:
references: http://www.mti.epita.fr/blogs/2008/07/06/avoir-une-structure-arborescente-en-sql/
Generally the method used to do this is to have a unique identifier for each node of the tree, and insert the identifier of the father node in the registration of the node.
The disadvantage of this technique is that one is obliged to make a SQL query for each node to retrieve all the son of a node. We can improve that by downloading all the nodes in the database, and rebuilding the tree by hand using an array indexed by parent node.
This technique is not really suitable for very large tree structures of several thousands of nodes.
So why don't trying by represent the tree differently, not as a tree, but as Nested Sets.
The Nested Set is an adjacent list realized in SQL as a tree.
The SQL for create the table is :
CREATE TABLE `tree` (
`id` INT NOT NULL AUTO_INCREMENT ,
`name` VARCHAR( 32 ) NOT NULL ,
`parentid` INT NOT NULL ,
`lft` INT NOT NULL ,
`rgt` INT NOT NULL ,
PRIMARY KEY ( `id` ))
SELECT n0.id FROM tree n0, tree n1 WHERE n1.id = 0 AND n0.lft BETWEEN n1.lft AND n1.rgt;
...
ASAP I will wrote a Java classes to maintain Nested Sets
keep in touch
Rinaldo
references: http://www.mti.epita.fr/blogs/2008/07/06/avoir-une-structure-arborescente-en-sql/
Friday, February 26, 2010
OpenERP Eclipse XML (view) Template
OpenERP's XML based view templates to create view, wizard, report with predefined templates.
Watch the video
Watch the video
Thursday, February 25, 2010
A PHP/Java Bridge
For those who want to integrate applications written in php with java I report a series of two articles. By working on the jAPS project I have to investigate about integrating a platform for e-learning written in PHP and the jAPS Intranet platform. Definitely a good basis to resume analysis
Monday, February 22, 2010
Customising the Pentaho User Console
For those who use the Pentaho User Console and want to customise it, I suggest reading the series of post from Prashant Raju
Rinaldo
Saturday, February 20, 2010
News from jAPS2.0
Hi friends, news from jAPS2.0 world:
Andrea create a new screencast Istantiate a new portal in 7 steps.
Thank you Andrea
Nice w.e. to all.
Rinaldo
Andrea create a new screencast Istantiate a new portal in 7 steps.
Thank you Andrea
Nice w.e. to all.
Rinaldo
Friday, February 19, 2010
Creating Cascade Parameters with Pentaho Report Designer 3.5.
New from Prashant :
Cascade parameters provide a way of managing large amounts of data in reports. You can define a set of related parameters so that the list of values for one parameter depends on the value chosen in another parameter.
In this example I will be using the Steel Wheels sample data to create a report which will display a list of customers using two parameters: a drop down parameter which will contain a distinct list of countries which will then filter another drop down parameter which contains cities which belong to the country.
Read the rest on the Prashant site
Read the rest on the Prashant site
Thursday, February 18, 2010
Mysql Access denied for user: 'root@localhost'
For those who like me receives this error due to a change in the db.I propose this solution which works on Ubuntu 9.04:
$ sudo service mysql stop
$ sudo mysqld -skip-grant-tables
so use your favorite tool to do the "grant" of users, then stop mysqld and restarted the mysql service
$ sudo service mysql startI hope this post will serve.
keep in touch
regards
Rinaldo
$ sudo service mysql stop
$ sudo mysqld -skip-grant-tables
so use your favorite tool to do the "grant" of users, then stop mysqld and restarted the mysql service
$ sudo service mysql startI hope this post will serve.
keep in touch
regards
Rinaldo
Wednesday, February 17, 2010
jAPS 2 0 - Presentation Layer Comparison
A very brief (really, it's short) comparison between jAPS 2.0 and some "Mistery Portlet Container".
Check out this SlideShare Presentation by William Ghelfi.
Tuesday, February 16, 2010
Pentaho and jAPS Target Italian Government with Business Intelligence
Technology Partnership Forms a Unique and Innovative Solution for Government Agencies
Pentaho Corporation, the commercial open source alternative for business intelligence (BI), and jAPS, the emerging open source Enterprise Accessible Information Platform, announced a strategic technology partnership aimed at delivering cost effective information applications to the Italian government. Through tighter integration between jAPS and Pentaho, the Italian government can take advantage of fully integrated BI solutions to make government intelligence information accessible to more individuals, including those with disabilities.
(more)
Pentaho Corporation, the commercial open source alternative for business intelligence (BI), and jAPS, the emerging open source Enterprise Accessible Information Platform, announced a strategic technology partnership aimed at delivering cost effective information applications to the Italian government. Through tighter integration between jAPS and Pentaho, the Italian government can take advantage of fully integrated BI solutions to make government intelligence information accessible to more individuals, including those with disabilities.
(more)
Monday, February 15, 2010
Brute Force your OpenERP data integration with OOOR inside the Kettle ETL
OpenERP is all the rage among open source ERP's but its native import/export have limitations when it comes to data integration. Server side OpenERP import/export is powerful but not so easy to get started and get interfaced. On the contrary, the famous Kettle open source ETL from Pentaho connects to almost anything, any SGBD thanks to the JDBC connectors, any CSV, Excell files...
With TerminatOOOR you have all the power of the full OpenERP API right inside your ETL data in/out flow. You can do any Create Read Update Delete operation enforcing the access rights of OpenERP. But you are absolutely not imited to that, in fact you can just do anything you would do with your OpenERP client: click buttons, perform workflow actions, trigger on_change events... This is because OOOR gives you the full access to OpenERP API.Thanks rvalyi (more...)
With TerminatOOOR you have all the power of the full OpenERP API right inside your ETL data in/out flow. You can do any Create Read Update Delete operation enforcing the access rights of OpenERP. But you are absolutely not imited to that, in fact you can just do anything you would do with your OpenERP client: click buttons, perform workflow actions, trigger on_change events... This is because OOOR gives you the full access to OpenERP API.Thanks rvalyi (more...)
Saturday, February 13, 2010
News from The Roar of the Fagiano*
jAPS 2.0 Tag Library Documentation
They published the TLD Doc for jAPS 2.0.
Have a look at japs-20-tag-library-documentation
They published the TLD Doc for jAPS 2.0.
Have a look at japs-20-tag-library-documentation
Ruby OOOR UML reverse engineering tool
I don't know if you got that, but Ruby OOOR connector for OpenERP is able to draw UML diagrams of any OpenERP classes since version 1.2.3. It uses the ir_model and ir_model_fields table to draw the UML, meaning even fields.function are properly displayed unlike tools that just connect to the database schema. More info on the rvalyi post
Thursday, February 11, 2010
Run jAPS 2.0 screencast now is old
A few months ago my friend Andrea published a screencast titled "Run jAPS in 10 minutes" which shows how to run jAPS 2.0 version 2.0.6.
So now that video is old :) It's old but still valid!
You can still follow the entire video and just remember that you HAVE TO configure /META-INF/context.xml instead of /WEB-INF/conf/systemParams.properties!!
There was many changes between 2.0.6 and 2.0.8 but in order to run jAPS 2.0 (2.0.8) in 10 minutes follow the old video guide and just editcontext.xml instead of systemParams.properties.
...So I suppose Andrea will make a new video ASAP :) maybe with jAPS 2.0.10 :D
Subscribe to:
Posts (Atom)