Database Design Best Practices
database design

Over the years, working as a seo expert, social media consultant, app developer, and digital strategist, data modeling and database architecture is an important part of my job which is rarely seen or even known by my clients. I have come to know that there are application agnostic tips which should be followed during data modeling and development for every project I work on. Here I put out some tips in the hope that they might

  1. Use well defined and consistent names for tables and columns (e.g. School, StudentCourse, CourseID ...).
  2. Use singular for table names (i.e. use StudentCourse instead of StudentCourses). Table represents a collection of entities, there is no need for plural names.
  3. Don’t use spaces for table names. Otherwise you will have to use ‘{‘, ‘[‘, ‘“’ etc. characters to define tables (i.e. for accesing table Student Course you'll write “Student Course”. StudentCourse is much better).
  4. Don’t use unnecessary prefixes or suffixes for table names (i.e. use School instead of TblSchool, SchoolTable etc.).
  5. Keep passwords as encrypted for security. Decrypt them in application when required.
  6. Use integer id fields for all tables. If id is not required for the time being, it may be required in the future (for association tables, indexing ...).
  7. Choose columns with the integer data type (or its variants) for indexing. varchar column indexing will cause performance problems.
  8. Use bit fields for boolean values. Using integer or varchar is unnecessarily storage consuming. Also start those column names with “Is”.
  9. Provide authentication for database access. Don’t give admin role to each user.
  10. Avoid “select *” queries until it is really needed. Use "select [required_columns_list]" for better performance.
  11. Use an ORM (object relational mapping) framework (i.e. hibernate, iBatis ...) if application code is big enough. Performance issues of ORM frameworks can be handled by detailed configuration parameters.
  12. Partition big and unused/rarely used tables/table parts to different physical storages for better query performance.
  13. For big, sensitive and mission critic database systems, use disaster recovery and security services like failover clustering, auto backups, replication etc.
  14. Use constraints (foreign key, check, not null ...) for data integrity. Don’t give whole control to application code.
  15. Lack of database documentation is evil. Document your database design with ER schemas and instructions. Also write comment lines for your triggers, stored procedures and other scripts.
  16. Use indexes for frequently used queries on big tables. Analyser tools can be used to determine where indexes will be defined. For queries retrieving a range of rows, clustered indexes are usually better. For point queries, non-clustered indexes are usually better.
  17. Database server and the web server must be placed in different machines. This will provide more security (attackers can’t access data directly) and server CPU and memory performance will be better because of reduced request number and process usage.
  18. Image and blob data columns must not be defined in frequently queried tables because of performance issues. These data must be placed in separate tables and their pointer can be used in queried tables.
  19. Normalization must be used as required, to optimize the performance. Under-normalization will cause excessive repetition of data, over-normalization will cause excessive joins across too many tables. Both of them will get worse performance.
  20. Spend time for database modeling and design as much as required. Otherwise saved(!) design time will cause (saved(!) design time) * 10/100/1000 maintenance and re-design time.
I Wanna Be That Guy (Texas Music Documentary, Episode 15)

The Texas music landscape has produced some of the most inspiring singers and songwriters ever. Legends we've all heard of. Now there's a new breed of talent out there on the same journey. Working the same roads, clicking off the same miles in a car, a van, if they're lucky, a plane. Musical poets living the troubadour life. The good gigs, the bad gigs, the all-night diners. Taking their music to any audience who's willing to listen. 


We want to take you on a journey - a journey into the lives of some of those singers and songwriters working today where the drive to perform never ends. Where passions live and die and rise again. 


And you can answer for yourself: What does it take to be a real troubadour? 


This is part of a documentary series that I worked on as a photographer, videographer and social media strategist. On the show we went behind the scenes & follow Texas-based singer-songwriters living the Troubadour life.


A note to my fellow internet content creators: one particularly interesting element of this documentary is the gear I used as one of the videographers on the show. For all the content I currently shoot, I use a variety of enthusiast level cameras from GoPros to Canon Point & Shoots to Fujifilm mirrorless cameras. You can see all the current gear I use here:


The primary camera I used on this shoot was a Canon 7D DSLR - look at this episode and tell me what you think about the overall production quality of this piece with the 7D mixed into shots from the other videographers who shot with pro Sony cameras and Canon C100/C300's.

What Is Digital Marketing?

What Is Digital Marketing?


Digital marketing refers to advertising delivered through digital channels like email, sites , social networking, search engines, and mobile apps. Although this term covers a broad selection of marketing activities, all of which are not universally agreed upon, we'll focus on the most common types below.


Paid Search


Paid search, or pay-per-click (PPC) advertising, typically refers to the "sponsored result" on the side or top of a search engine results page (SERP). You only pay when your ad is clicked. You may tailor your PPC ads to appear when search terms are entered, creating ads that are targeted to a specific audience.


PPC ads are most of all, visible, and flexible, effective for many different types of organizations. They're contextual advertisements--advertisements that appear when there is a person searching for a particular keyword or term.

Search Engine Optimization


To put it simply, search engine optimization (SEO) is the process of optimizing the articles, technical setup, and reach of your site so that your pages appear at the top of a search engine result for a particular set of keyword phrases. Ultimately, the objective is to attract visitors to your site when they search for products, services, or information.


SEO can be regarded as a set of practices for good digital marketing. It enforces the requirement for a well-constructed and easy-to-use site content, and the credibility for sites and individuals to advocate you by mentioning it in networking posts or linking to your website.

  • 67% of all of the clicks are from the first five listings on a search results page
  • 71 percentof searches resulted in a page one Google organic click.


Content Marketing


Have you heard the expression, "Content is king?" Otherwise, you have now. Content that is great is the fuel that drives your electronic marketing activities:

  • It is a key pillar of modern SEO
  • It helps you get noticed on social media
  • It gives you something of value to offer customers in emails and paid search advertisements


Creating content that's not promotional in nature, but instead educates and inspires, is tough but well worth the effort. Offering content that is relevant to your audience helps you are seen by them as a source of information. In addition to this content makes it less probable that they'll tune you out.

Digital marketing analytics

Social Media Marketing


Nowadays people are watching cat videos and posting selfies. Before participating with that organization, educate, research, and many rely on social networks to discover themselves. For marketers, it's not enough to post on your Facebook and Twitter accounts. You should weave elements into every facet of your advertising and create more peer-to-peer sharing opportunities. The more your audience wants to engage with your own content, the more likely it is that they are going to want to share it. This ultimately leads to them becoming a customer.

And they will influence their friends to become clients.

  • 47 percent of all Internet users are on Facebook.
  • 88% of merchandise purchases are Pinterest trapped


Email Marketing


Email has been around for more than two decades, and it's not going anywhere anytime soon. It's still the quickest and most direct way to reach customers with critical information. The reason is simple. Just ask yourself how many times you have checked your email in the past hour...See what we mean?


But great marketers know that not just any email will do. Email campaigns have to be informative, relevant, engaging, and entertaining. These five core characteristics should satisfy to succeed:

  • Trustworthy
  • Relevant
  • Conversational
  • Be coordinated across stations
  • Strategic 


Mobile Marketing


As mobile devices become an integral part of our lives, it is crucial that marketers understand how to effectively communicate on this extremely and unique personal channel. Mobile devices are checked throughout the day, sit next to our beds, and are stored in our pockets. This makes marketing on cellular nuanced but also incredibly important.


From MMS and SMS into marketing, there are many ways to market on devices that are mobile, so finding the right method for your particular business is key. Beyond the mechanisms you have to think across electronic channels about coordination of your marketing and make sure mobile is a part of that mix.


Marketing Automation


Marketing automation is an integral platform that joins your digital marketing all . Without it, your campaigns will look like an unfinished puzzle with a piece that is crucial missing. Marketing automation software automates and streamlines workflows and marketing tasks. It measures ROI of your campaigns and the results, helping you to grow earnings .


Marketing automation will help you gain insight, when used efficiently. It will provide the metrics required to speak confidently about digital advertising's effect on the bottom line to you.

7 Search Engine Optimization Tips For Your Business

Search engine optimization is supported by use of relevant keywords that get your website a higher placement in search rankings on various search engines. Most search engines have algorithms that decide the page ranks and overall website ranks. The algorithms are updated often, and well-managed websites that adhere to the latest standards always have a higher chance of being placed higher in search results.


Listed below are seven simple ways in which you can use organic SEO effectively to add value to your online business.


1.    Using a unique name for your business and domain is the smartest way to make sure you show up in the search results. The name you come up with should also reflect the kind of products/services you offer. It is an added advantage if the name is catchy/funny.


2.    The website homepage and other category pages should have rich snippets to ensure that people are introduced to featured products/ services or any other useful information. Other pages on the website should also be well structured to help them get a higher search ranking.


3.    Page titles should be well described and they should speak about what one can expect on the page. Pages should have descriptive meta page descriptions to make keyword within the search engine results pages easier.


4.    Website pages should be linked very efficiently with each other within the website and with reputed pages outside the website to gain link popularity.


5.    Websites should focus on minimizing graphic elements without compromising on the overall look and appeal of the website.


6.    It is also very helpful to tie up social media marketing techniques with organic search techniques. The combined effect is a thorough Internet marketing plan that can do wonders for the website when executed well.


7.    Cookie tracking, robots.txt, WC3 Code compliance, e-commerce Spider Algorithm synchronization, submitting data to autonomous ranking systems, query strings, databases, content management systems, etc. are some of the technical aspects that should be taken into consideration when optimizing a website for searches. When used right, they can help generate a strong online presence for a website.


Fortunately, most of these services are now available through website designers and Search Engine Optimization professionals who manage your website functions from end-to-end. An online business in the hands of the right SEO professional is a benefit for any online business.