In this episode of The 6 Figure Developer Podcast the guys discuss Clean Code and The Three Virtues of a GREAT Programmer.
* What is Clean Code?
* Why is Clean Code Important?
* The Three Virtues of a GREAT Programmer
https://cleancoders.com/
http://threevirtues.com/
https://www.codingblocks.net/
https://ardalis.com/msdn-feature-slices-for-aspnet-core-mvc
https://msdn.microsoft.com/en-us/magazine/mt763233.aspx
Products from Amazon.com
‹
›
jQuery(document).ready(function() {
var CONSTANTS = {
productMinWidth : 185,
productMargin : 20
};
var $adUnits = jQuery('.aalb-product-carousel-unit');
$adUnits.each(function() {
var $adUnit = jQuery(this),
$wrapper = $adUnit.find('.aalb-pc-wrapper'),
$productContainer = $adUnit.find('.aalb-pc-product-container'),
$btnNext = $adUnit.find('.aalb-pc-btn-next'),
$btnPrev = $adUnit.find('.aalb-pc-btn-prev'),
$productList = $productContainer.find('.aalb-pc-product-list'),
$products = $productList.find('.aalb-pc-product'),
productCount = $products.length;
if (!productCount) {
return true;
}
var rows = $adUnit.find('input[name=rows]').length && parseInt($adUnit.find('input[name=rows]').val(), 10);
var columns = $adUnit.find('input[name=columns]').length && parseInt($adUnit.find('input[name=columns]').val(), 10);
if( columns ) {
var productContainerMinWidth = columns * (CONSTANTS.productMinWidth + CONSTANTS.productMargin) + 'px';
$adUnit.css( 'min-width', productContainerMinWidth );
$productContainer.css( 'min-width', productContainerMinWidth );
$products.filter( ':nth-child(' + columns + 'n + 1)' ).css( 'clear', 'both' );
}
if (rows && columns) {
var cutOffIndex = (rows * columns) - 1;
$products.filter(':gt(' + cutOffIndex + ')').remove();
}
function updateLayout() {
var wrapperWidth = $wrapper.width();
var possibleColumns = columns || parseInt( wrapperWidth / (CONSTANTS.productMinWidth + CONSTANTS.productMargin), 10 );
var actualColumns = columns || possibleColumns < productCount ? possibleColumns : productCount;
/**
* The actual columns can be zero when the wraperwidth is less than sum of CONSTANTS.productMinWidth and
* CONSTANTS.productMargin.The parseInt will use floor function and converts any value less than 1 to
* zero.Therefore making actual columns 1 .
**/
if( actualColumns == 0 ) {
actualColumns = 1;
}
var productWidth = parseInt( wrapperWidth / actualColumns, 10 ) - CONSTANTS.productMargin;
$products.css( 'width', productWidth + 'px' );