Dogfooding in Product Development

Dogfooding, or eating your own dog food, is a practice that all product developers should implement all the time. According to wikipedia: Dogfooding, occurs when an organization uses its own product. This can be a way for an organization to test its products in real-world usage. Hence dogfooding can act as quality control, and eventually … Continue reading Dogfooding in Product Development →

Truth First, or Why You Should Mostly Implement Database First Designs

In this much overdue article, I will explain why I think that in almost all cases, you should implement a "database first" design in your application's data models, rather than a "Java first" design (or whatever your client language is), the latter approach leading to a long road of pain and suffering, once your project … Continue reading Truth First, or Why You Should Mostly Implement Database First Designs →

SQL Server ALTER TABLE SET DEFAULT

Most databases that support default values on their column DDL, it is also possible to actually alter that default. An Oracle example: CREATE TABLE t ( val NUMBER(7) DEFAULT 1 NOT NULL ); -- Oops, wrong default, let us change it ALTER TABLE t MODIFY val DEFAULT -1; -- Now that is better Unfortunately, this … Continue reading SQL Server ALTER TABLE SET DEFAULT →

jOOQ Newsletter: February 26, 2014

Subscribe to the newsletter here Tweet of the Day Our followers, users and customers are shouting their love for jOOQ to the world. Here are: Ben Hood who is constantly discovering new useful features in jOOQ. https://twitter.com/0x6e6562/status/436753836540452864 Antoine Comte who is skipping MyBatis to jump directly to jOOQ (in French) https://twitter.com/comte_a/status/433699690069385216 Both guys are absolutely right, of … Continue reading jOOQ Newsletter: February 26, 2014 →

Liquibase for DB Migrations

I have just now discovered a very nice-looking tool for database migrations: Liquibase https://www.liquibase.org/ With Liquibase, you can model your DB increments as XML files that will translate to as many as 13 different databases. A sample DB increment (taken from the Liquibase manual): property='vat' ...and so on. I guess it's about time to contact … Continue reading Liquibase for DB Migrations →