<!DOCTYPE html>
<html lang="en-US">
<head itemscope itemtype="https://schema.org/WebSite">
<meta charset="UTF-8" />
<meta name="description" content="Algorithms, for the heck of it" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
	<!-- Google Tag Manager -->
	
<title>Algorithm.co.il – Algorithms, for the heck of it</title>
<link rel='dns-prefetch' href='//secure.gravatar.com' />
<link rel='dns-prefetch' href='//unpkg.com' />
<link rel='dns-prefetch' href='//fonts.googleapis.com' />
<link rel='dns-prefetch' href='//use.fontawesome.com' />
<link rel='dns-prefetch' href='//s.w.org' />
<link rel='dns-prefetch' href='//v0.wordpress.com' />
<link rel='dns-prefetch' href='//jetpack.wordpress.com' />
<link rel='dns-prefetch' href='//s0.wp.com' />
<link rel='dns-prefetch' href='//s1.wp.com' />
<link rel='dns-prefetch' href='//s2.wp.com' />
<link rel='dns-prefetch' href='//public-api.wordpress.com' />
<link rel='dns-prefetch' href='//0.gravatar.com' />
<link rel='dns-prefetch' href='//1.gravatar.com' />
<link rel='dns-prefetch' href='//2.gravatar.com' />
<link rel="alternate" type="application/rss+xml" title="Algorithm.co.il &raquo; Feed" href="https://www.algorithm.co.il/feed/" />
<link rel="alternate" type="application/rss+xml" title="Algorithm.co.il &raquo; Comments Feed" href="https://www.algorithm.co.il/comments/feed/" />
<link rel="canonical" href="https://www.algorithm.co.il/" />
		<!-- This site uses the Google Analytics by MonsterInsights plugin v7.17.0 - Using Analytics tracking - https://www.monsterinsights.com/ -->
							<script src="//www.googletagmanager.com/gtag/js?id=UA-10629484-1"  type="text/javascript" data-cfasync="false"></script>
			<script type="text/javascript" data-cfasync="false">
				var mi_version = '7.17.0';
				var mi_track_user = true;
				var mi_no_track_reason = '';
				
								var disableStr = 'ga-disable-UA-10629484-1';

				/* Function to detect opted out users */
				function __gtagTrackerIsOptedOut() {
					return document.cookie.indexOf( disableStr + '=true' ) > - 1;
				}

				/* Disable tracking if the opt-out cookie exists. */
				if ( __gtagTrackerIsOptedOut() ) {
					window[disableStr] = true;
				}

				/* Opt-out function */
				function __gtagTrackerOptout() {
					document.cookie = disableStr + '=true; expires=Thu, 31 Dec 2099 23:59:59 UTC; path=/';
					window[disableStr] = true;
				}

				if ( 'undefined' === typeof gaOptout ) {
					function gaOptout() {
						__gtagTrackerOptout();
					}
				}
								window.dataLayer = window.dataLayer || [];
				if ( mi_track_user ) {
					function __gtagTracker() {dataLayer.push( arguments );}
					__gtagTracker( 'js', new Date() );
					__gtagTracker( 'set', {
						'developer_id.dZGIzZG' : true,
						                    });
					__gtagTracker( 'config', 'UA-10629484-1', {
						forceSSL:true,link_attribution:true,					} );
										window.gtag = __gtagTracker;										(
						function () {
							/* https://developers.google.com/analytics/devguides/collection/analyticsjs/ */
							/* ga and __gaTracker compatibility shim. */
							var noopfn = function () {
								return null;
							};
							var newtracker = function () {
								return new Tracker();
							};
							var Tracker = function () {
								return null;
							};
							var p = Tracker.prototype;
							p.get = noopfn;
							p.set = noopfn;
							p.send = function (){
								var args = Array.prototype.slice.call(arguments);
								args.unshift( 'send' );
								__gaTracker.apply(null, args);
							};
							var __gaTracker = function () {
								var len = arguments.length;
								if ( len === 0 ) {
									return;
								}
								var f = arguments[len - 1];
								if ( typeof f !== 'object' || f === null || typeof f.hitCallback !== 'function' ) {
									if ( 'send' === arguments[0] ) {
										var hitConverted, hitObject = false, action;
										if ( 'event' === arguments[1] ) {
											if ( 'undefined' !== typeof arguments[3] ) {
												hitObject = {
													'eventAction': arguments[3],
													'eventCategory': arguments[2],
													'eventLabel': arguments[4],
													'value': arguments[5] ? arguments[5] : 1,
												}
											}
										}
										if ( typeof arguments[2] === 'object' ) {
											hitObject = arguments[2];
										}
										if ( typeof arguments[5] === 'object' ) {
											Object.assign( hitObject, arguments[5] );
										}
										if ( 'undefined' !== typeof (
											arguments[1].hitType
										) ) {
											hitObject = arguments[1];
										}
										if ( hitObject ) {
											action = 'timing' === arguments[1].hitType ? 'timing_complete' : hitObject.eventAction;
											hitConverted = mapArgs( hitObject );
											__gtagTracker( 'event', action, hitConverted );
										}
									}
									return;
								}

								function mapArgs( args ) {
									var gaKey, hit = {};
									var gaMap = {
										'eventCategory': 'event_category',
										'eventAction': 'event_action',
										'eventLabel': 'event_label',
										'eventValue': 'event_value',
										'nonInteraction': 'non_interaction',
										'timingCategory': 'event_category',
										'timingVar': 'name',
										'timingValue': 'value',
										'timingLabel': 'event_label',
									};
									for ( gaKey in gaMap ) {
										if ( 'undefined' !== typeof args[gaKey] ) {
											hit[gaMap[gaKey]] = args[gaKey];
										}
									}
									return hit;
								}

								try {
									f.hitCallback();
								} catch ( ex ) {
								}
							};
							__gaTracker.create = newtracker;
							__gaTracker.getByName = newtracker;
							__gaTracker.getAll = function () {
								return [];
							};
							__gaTracker.remove = noopfn;
							__gaTracker.loaded = true;
							window['__gaTracker'] = __gaTracker;
						}
					)();
									} else {
										console.log( "" );
					( function () {
							function __gtagTracker() {
								return null;
							}
							window['__gtagTracker'] = __gtagTracker;
							window['gtag'] = __gtagTracker;
					} )();
									}
			</script>
				<!-- / Google Analytics by MonsterInsights -->
				<script type="text/javascript">
			window._wpemojiSettings = {"baseUrl":"https:\/\/s.w.org\/images\/core\/emoji\/13.0.0\/72x72\/","ext":".png","svgUrl":"https:\/\/s.w.org\/images\/core\/emoji\/13.0.0\/svg\/","svgExt":".svg","source":{"concatemoji":"https:\/\/www.algorithm.co.il\/wp-includes\/js\/wp-emoji-release.min.js?ver=5.5.5"}};
			!function(e,a,t){var n,r,o,i=a.createElement("canvas"),p=i.getContext&&i.getContext("2d");function s(e,t){var a=String.fromCharCode;p.clearRect(0,0,i.width,i.height),p.fillText(a.apply(this,e),0,0);e=i.toDataURL();return p.clearRect(0,0,i.width,i.height),p.fillText(a.apply(this,t),0,0),e===i.toDataURL()}function c(e){var t=a.createElement("script");t.src=e,t.defer=t.type="text/javascript",a.getElementsByTagName("head")[0].appendChild(t)}for(o=Array("flag","emoji"),t.supports={everything:!0,everythingExceptFlag:!0},r=0;r<o.length;r++)t.supports[o[r]]=function(e){if(!p||!p.fillText)return!1;switch(p.textBaseline="top",p.font="600 32px Arial",e){case"flag":return s([127987,65039,8205,9895,65039],[127987,65039,8203,9895,65039])?!1:!s([55356,56826,55356,56819],[55356,56826,8203,55356,56819])&&!s([55356,57332,56128,56423,56128,56418,56128,56421,56128,56430,56128,56423,56128,56447],[55356,57332,8203,56128,56423,8203,56128,56418,8203,56128,56421,8203,56128,56430,8203,56128,56423,8203,56128,56447]);case"emoji":return!s([55357,56424,8205,55356,57212],[55357,56424,8203,55356,57212])}return!1}(o[r]),t.supports.everything=t.supports.everything&&t.supports[o[r]],"flag"!==o[r]&&(t.supports.everythingExceptFlag=t.supports.everythingExceptFlag&&t.supports[o[r]]);t.supports.everythingExceptFlag=t.supports.everythingExceptFlag&&!t.supports.flag,t.DOMReady=!1,t.readyCallback=function(){t.DOMReady=!0},t.supports.everything||(n=function(){t.readyCallback()},a.addEventListener?(a.addEventListener("DOMContentLoaded",n,!1),e.addEventListener("load",n,!1)):(e.attachEvent("onload",n),a.attachEvent("onreadystatechange",function(){"complete"===a.readyState&&t.readyCallback()})),(n=t.source||{}).concatemoji?c(n.concatemoji):n.wpemoji&&n.twemoji&&(c(n.twemoji),c(n.wpemoji)))}(window,document,window._wpemojiSettings);
		</script>
		<link rel='stylesheet' id='genesis-blocks-fontawesome-css'  href='https://www.algorithm.co.il/wp-content/plugins/genesis-blocks/dist/assets/fontawesome/css/all.min.css?ver=1621550315' type='text/css' media='all' />
<link rel='stylesheet' id='algorithm-css'  href='https://www.algorithm.co.il/wp-content/themes/algorithm/style.css?ver=1.0' type='text/css' media='all' />
<link rel='stylesheet' id='wp-block-library-css'  href='https://www.algorithm.co.il/wp-includes/css/dist/block-library/style.min.css?ver=5.5.5' type='text/css' media='all' />
<style id='wp-block-library-inline-css' type='text/css'>
.has-text-align-justify{text-align:justify;}
</style>
<link rel='stylesheet' id='genesis-blocks-style-css-css'  href='https://www.algorithm.co.il/wp-content/plugins/genesis-blocks/dist/blocks.style.build.css?ver=1621550315' type='text/css' media='all' />
<link rel='stylesheet' id='wp-syntax-css-css'  href='https://www.algorithm.co.il/wp-content/plugins/wp-syntax/css/wp-syntax.css?ver=1.1' type='text/css' media='all' />
<link rel='stylesheet' id='theme-styles-css'  href='https://www.algorithm.co.il/wp-content/themes/algorithm/style.css?ver=1623673001' type='text/css' media='all' />
<link rel='stylesheet' id='algorithm-fonts-css'  href='//fonts.googleapis.com/css?family=Rubik%3A300%2C400%2C600%2C700&#038;ver=1.0' type='text/css' media='all' />
<link rel='stylesheet' id='font-awesome-css'  href='//use.fontawesome.com/releases/v5.5.0/css/all.css?ver=1.0' type='text/css' media='all' />
<link rel='stylesheet' id='jetpack_css-css'  href='https://www.algorithm.co.il/wp-content/plugins/jetpack/css/jetpack.css?ver=9.4.2' type='text/css' media='all' />
<script type='text/javascript' id='monsterinsights-frontend-script-js-extra'>
/* <![CDATA[ */
var monsterinsights_frontend = {"js_events_tracking":"true","download_extensions":"doc,pdf,ppt,zip,xls,docx,pptx,xlsx","inbound_paths":"[{\"path\":\"\\\/go\\\/\",\"label\":\"affiliate\"},{\"path\":\"\\\/recommend\\\/\",\"label\":\"affiliate\"}]","home_url":"https:\/\/www.algorithm.co.il","hash_tracking":"false","ua":"UA-10629484-1"};
/* ]]> */
</script>
<script type='text/javascript' src='https://www.algorithm.co.il/wp-content/plugins/google-analytics-for-wordpress/assets/js/frontend-gtag.min.js?ver=7.17.0' id='monsterinsights-frontend-script-js'></script>
<script type='text/javascript' src='https://www.algorithm.co.il/wp-includes/js/jquery/jquery.js?ver=1.12.4-wp' id='jquery-core-js'></script>
<script type='text/javascript' src='//unpkg.com/scrollreveal/dist/scrollreveal.min.js?ver=5.5.5' id='scrollreveal-js'></script>
<link rel="https://api.w.org/" href="https://www.algorithm.co.il/wp-json/" /><link rel="alternate" type="application/json" href="https://www.algorithm.co.il/wp-json/wp/v2/pages/937" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://www.algorithm.co.il/xmlrpc.php?rsd" />
<link rel="alternate" type="application/json+oembed" href="https://www.algorithm.co.il/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fwww.algorithm.co.il%2F" />
<link rel="alternate" type="text/xml+oembed" href="https://www.algorithm.co.il/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fwww.algorithm.co.il%2F&#038;format=xml" />
<link rel="pingback" href="https://www.algorithm.co.il/xmlrpc.php" />
<meta itemprop="name" content="Algorithm.co.il" />
<meta itemprop="url" content="https://www.algorithm.co.il/" />
<style type="text/css">.site-title a { background: url(https://www.algorithm.co.il/wp-content/uploads/2021/05/logo.png) no-repeat !important; }</style>
<style type="text/css">.recentcomments a{display:inline !important;padding:0 !important;margin:0 !important;}</style>
<!-- Jetpack Open Graph Tags -->
<meta property="og:type" content="website" />
<meta property="og:title" content="Algorithm.co.il" />
<meta property="og:description" content="Algorithms, for the heck of it" />
<meta property="og:url" content="https://www.algorithm.co.il/" />
<meta property="og:site_name" content="Algorithm.co.il" />
<meta property="og:image" content="https://s0.wp.com/i/blank.jpg" />
<meta property="og:locale" content="en_US" />
<meta name="twitter:text:title" content="Home" />
<meta name="twitter:image" content="https://www.algorithm.co.il/wp-content/uploads/2021/06/header.jpg?w=640" />
<meta name="twitter:card" content="summary_large_image" />

<!-- End Jetpack Open Graph Tags -->
</head>
<body class="home page-template-default page page-id-937 wp-embed-responsive custom-header header-image header-full-width full-width-content genesis-title-hidden genesis-breadcrumbs-hidden genesis-footer-widgets-hidden" itemscope itemtype="https://schema.org/WebPage">	<!-- Google Tag Manager (noscript) -->

	<div class="site-container"><ul class="genesis-skip-link"><li><a href="#genesis-nav-primary" class="screen-reader-shortcut"> Skip to primary navigation</a></li><li><a href="#genesis-content" class="screen-reader-shortcut"> Skip to main content</a></li></ul><header class="site-header" itemscope itemtype="https://schema.org/WPHeader"><div class="wrap"><div class="title-area"><p class="site-title" itemprop="headline"><a href="https://www.algorithm.co.il/">Algorithm.co.il</a></p></div><nav class="nav-primary" aria-label="Main" itemscope itemtype="https://schema.org/SiteNavigationElement" id="genesis-nav-primary"><ul id="menu-main-menu" class="menu genesis-nav-menu menu-primary"><li id="menu-item-661" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-661"><a href="https://www.algorithm.co.il/about/" itemprop="url"><span itemprop="name">About</span></a></li>
<li id="menu-item-658" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-658"><a href="https://www.algorithm.co.il/best-posts/" itemprop="url"><span itemprop="name">Best Posts</span></a></li>
<li id="menu-item-659" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-659"><a href="https://www.algorithm.co.il/origami/" itemprop="url"><span itemprop="name">Origami</span></a></li>
<li id="menu-item-660" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-660"><a href="https://www.algorithm.co.il/projects/" itemprop="url"><span itemprop="name">Older Projects</span></a></li>
<li class="menu-item"><form class="search-form" method="get" action="https://www.algorithm.co.il/" role="search" itemprop="potentialAction" itemscope itemtype="https://schema.org/SearchAction"><label class="search-form-label screen-reader-text" for="searchform-1">Search</label><input class="search-form-input" type="search" name="s" id="searchform-1" placeholder="Search" itemprop="query-input"><button type="submit" class="search-form-submit" aria-label="Search"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" class="search-icon"><path d="M505 442.7L405.3 343c-4.5-4.5-10.6-7-17-7H372c27.6-35.3 44-79.7 44-128C416 93.1 322.9 0 208 0S0 93.1 0 208s93.1 208 208 208c48.3 0 92.7-16.4 128-44v16.3c0 6.4 2.5 12.5 7 17l99.7 99.7c9.4 9.4 24.6 9.4 33.9 0l28.3-28.3c9.4-9.4 9.4-24.6.1-34zM208 336c-70.7 0-128-57.2-128-128 0-70.7 57.2-128 128-128 70.7 0 128 57.2 128 128 0 70.7-57.2 128-128 128z"></path></svg><span class="screen-reader-text">Search...</span></button><meta content="https://www.algorithm.co.il/?s={s}" itemprop="target"></form></li></ul></nav></div></header><div class="site-inner"><div class="wrap"><div class="content-sidebar-wrap"><main class="content" id="genesis-content"><article class="post-937 page type-page status-publish entry" aria-label="Home" itemscope itemtype="https://schema.org/CreativeWork"><div class="entry-content" itemprop="text">
<div class="wp-block-genesis-blocks-gb-container gb-block-container"><div class="gb-container-inside"><div class="gb-container-content">
<figure class="wp-block-image size-large full-size-image"><img loading="lazy" width="932" height="198" src="https://www.algorithm.co.il/wp-content/uploads/2021/06/header.jpg" alt="" class="wp-image-962" srcset="https://www.algorithm.co.il/wp-content/uploads/2021/06/header.jpg 932w, https://www.algorithm.co.il/wp-content/uploads/2021/06/header-300x64.jpg 300w, https://www.algorithm.co.il/wp-content/uploads/2021/06/header-768x163.jpg 768w" sizes="(max-width: 932px) 100vw, 932px" /></figure>
</div></div></div>



<div style="padding-left:5%;padding-right:5%;padding-bottom:5%;padding-top:5%" class="wp-block-genesis-blocks-gb-container gb-block-container"><div class="gb-container-inside"><div class="gb-container-content">
<h1 class="section-title">Latest posts</h1>


<section class="gb-block-post-grid featuredpost aligncenter posts-gallery"><div class="gb-post-grid-items is-grid columns-3"><article id="post-925" class="gb-post-grid-item post-925 post type-post status-publish format-standard category-algo tag-interval tag-portion tag-tree entry"><div class="gb-block-post-grid-text"><header class="gb-block-post-grid-header"><h3 class="gb-block-post-grid-title"><a href="https://www.algorithm.co.il/programming/algo/working-with-intervals/" rel="bookmark">Working with Intervals</a></h3><div class="gb-block-post-grid-byline"><div class="gb-block-post-grid-author" itemprop="author" itemtype="https://schema.org/Person"><a class="gb-text-link" href="https://www.algorithm.co.il/author/admin/" itemprop="url" rel="author"><span itemprop="name">admin</span></a></div><time datetime="2020-08-30T07:07:59+03:00" class="gb-block-post-grid-date" itemprop="datePublished">2020-08-30</time></div></header><div class="gb-block-post-grid-excerpt"><p>Over the last couple of months my team at Flytrex had occasion to use intervals more than once, and in both cases the team asked me, &#8220;What&#8217;s the right way to solve this?&#8221;. Since this is a common problem, I thought I&#8217;d write a short post about it. Most interval problems seem deceptively simple, while&hellip;</p>
<p><a class="gb-block-post-grid-more-link gb-text-link" href="https://www.algorithm.co.il/programming/algo/working-with-intervals/" rel="bookmark">Read more <span class="screen-reader-text">Working with Intervals</span></a></p></div></div></article>
<article id="post-919" class="gb-post-grid-item post-919 post type-post status-publish format-standard category-projects tag-deployment tag-git entry"><div class="gb-block-post-grid-text"><header class="gb-block-post-grid-header"><h3 class="gb-block-post-grid-title"><a href="https://www.algorithm.co.il/projects/how-we-deploy-with-git/" rel="bookmark">How we deploy with Git</a></h3><div class="gb-block-post-grid-byline"><div class="gb-block-post-grid-author" itemprop="author" itemtype="https://schema.org/Person"><a class="gb-text-link" href="https://www.algorithm.co.il/author/admin/" itemprop="url" rel="author"><span itemprop="name">admin</span></a></div><time datetime="2020-08-16T10:00:00+03:00" class="gb-block-post-grid-date" itemprop="datePublished">2020-08-16</time></div></header><div class="gb-block-post-grid-excerpt"><p>It seems common practice to have a staging and production branches for deploying your code. A common pattern is to push (or pull request) to these branches, then merge the changes. Then, some system watching this branch will notice, and deploy to the appropriate environment. (Another way this is done is with tags, but I&hellip;</p>
<p><a class="gb-block-post-grid-more-link gb-text-link" href="https://www.algorithm.co.il/projects/how-we-deploy-with-git/" rel="bookmark">Read more <span class="screen-reader-text">How we deploy with Git</span></a></p></div></div></article>
<article id="post-812" class="gb-post-grid-item post-812 post type-post status-publish format-standard category-projects tag-app tag-gamification tag-learntoread tag-lessons tag-mobile-development entry"><div class="gb-block-post-grid-text"><header class="gb-block-post-grid-header"><h3 class="gb-block-post-grid-title"><a href="https://www.algorithm.co.il/projects/5-useful-lessons-from-writing-an-app-for-kids/" rel="bookmark">5 useful lessons from writing an app for kids</a></h3><div class="gb-block-post-grid-byline"><div class="gb-block-post-grid-author" itemprop="author" itemtype="https://schema.org/Person"><a class="gb-text-link" href="https://www.algorithm.co.il/author/lorg/" itemprop="url" rel="author"><span itemprop="name">lorg</span></a></div><time datetime="2020-08-07T16:37:48+03:00" class="gb-block-post-grid-date" itemprop="datePublished">2020-08-07</time></div></header><div class="gb-block-post-grid-excerpt"><p>It always starts with an itch. Today, there aren&#8217;t really many good apps to teach kids to read Hebrew. The best one is &#8220;Kesem&#8217;s Monsters&#8221; &#8211; and when I tried getting my son to play it, it annoyed me. He liked playing it &#8211; but I thought it wasn&#8217;t teaching reading all that well. About&hellip;</p>
<p><a class="gb-block-post-grid-more-link gb-text-link" href="https://www.algorithm.co.il/projects/5-useful-lessons-from-writing-an-app-for-kids/" rel="bookmark">Read more <span class="screen-reader-text">5 useful lessons from writing an app for kids</span></a></p></div></div></article>
</div></section>


<div class="wp-block-buttons all-posts-link">
<div class="wp-block-button"><a class="wp-block-button__link" href="https://www.algorithm.co.il/all-posts/">Browse all posts</a></div>
</div>
</div></div></div>



<div style="padding-left:5%;padding-right:5%;padding-bottom:10%;padding-top:10%" class="wp-block-genesis-blocks-gb-container favourites gb-block-container"><div class="gb-container-inside"><div class="gb-container-content">
<h1 class="section-title">Favourites</h1>


<section class="gb-block-post-grid featuredpost aligncenter posts-gallery"><div class="gb-post-grid-items is-grid columns-3"><article id="post-74" class="gb-post-grid-item post-74 post type-post status-publish format-standard category-algorithms category-favourites category-humour category-programming category-python tag-algorithm tag-natural-language-processing tag-nltk tag-python tag-rhymes tag-xkcd entry"><div class="gb-block-post-grid-text"><header class="gb-block-post-grid-header"><h3 class="gb-block-post-grid-title"><a href="https://www.algorithm.co.il/humour/rhyme-and-reason-with-python/" rel="bookmark">Rhyme and Reason with Python</a></h3><div class="gb-block-post-grid-byline"><div class="gb-block-post-grid-author" itemprop="author" itemtype="https://schema.org/Person"><a class="gb-text-link" href="https://www.algorithm.co.il/author/lorg/" itemprop="url" rel="author"><span itemprop="name">lorg</span></a></div><time datetime="2008-02-06T03:55:22+02:00" class="gb-block-post-grid-date" itemprop="datePublished">2008-02-06</time></div></header><div class="gb-block-post-grid-excerpt"><p>After reading xkcd&#8217;s blog, I went to LimerickDB.com. It looks and works just like bash.org, but for limericks. Quite amused with some of the limericks available, I wanted to try and compose my own. The first one came out fine, but I got stuck without a rhyme for the second one: a man named guido&hellip;</p>
<p><a class="gb-block-post-grid-more-link gb-text-link" href="https://www.algorithm.co.il/humour/rhyme-and-reason-with-python/" rel="bookmark">Read more <span class="screen-reader-text">Rhyme and Reason with Python</span></a></p></div></div></article>
<article id="post-73" class="gb-post-grid-item post-73 post type-post status-publish format-standard category-compilation category-computer-science category-favourites category-programming category-projects category-python tag-compilation tag-fuzzing tag-homework tag-python tag-testing entry"><div class="gb-block-post-grid-text"><header class="gb-block-post-grid-header"><h3 class="gb-block-post-grid-title"><a href="https://www.algorithm.co.il/computer-science/manually-fuzzing-my-own-compiler/" rel="bookmark">Manually fuzzing my own compiler</a></h3><div class="gb-block-post-grid-byline"><div class="gb-block-post-grid-author" itemprop="author" itemtype="https://schema.org/Person"><a class="gb-text-link" href="https://www.algorithm.co.il/author/lorg/" itemprop="url" rel="author"><span itemprop="name">lorg</span></a></div><time datetime="2008-01-30T14:21:36+02:00" class="gb-block-post-grid-date" itemprop="datePublished">2008-01-30</time></div></header><div class="gb-block-post-grid-excerpt"><p>As I mentioned before, I had to write a compiler for simplified CPL. An obvious requirement was that the compiler generate correct code. A less obvious requirement, but important none-the-less, was that after a syntax error, the compiler will keep parsing the source program. Now, the default behavior of a parser generated by Bison for&hellip;</p>
<p><a class="gb-block-post-grid-more-link gb-text-link" href="https://www.algorithm.co.il/computer-science/manually-fuzzing-my-own-compiler/" rel="bookmark">Read more <span class="screen-reader-text">Manually fuzzing my own compiler</span></a></p></div></div></article>
<article id="post-66" class="gb-post-grid-item post-66 post type-post status-publish format-standard category-favourites category-fractals category-math category-programming category-python tag-base-systems tag-dragon-fractal tag-fractal tag-knuth tag-python entry"><div class="gb-block-post-grid-text"><header class="gb-block-post-grid-header"><h3 class="gb-block-post-grid-title"><a href="https://www.algorithm.co.il/math/fractals-in-10-minutes-no-3-the-dragon/" rel="bookmark">Fractals in 10 minutes no. 3 &#8211; The Dragon</a></h3><div class="gb-block-post-grid-byline"><div class="gb-block-post-grid-author" itemprop="author" itemtype="https://schema.org/Person"><a class="gb-text-link" href="https://www.algorithm.co.il/author/lorg/" itemprop="url" rel="author"><span itemprop="name">lorg</span></a></div><time datetime="2008-01-16T14:12:33+02:00" class="gb-block-post-grid-date" itemprop="datePublished">2008-01-16</time></div></header><div class="gb-block-post-grid-excerpt"><p>When first I looked through the pages of the book &#8220;Hacker&#8217;s Delight&#8221;, I found myself looking at the chapter about bases. There I learned a very curious fact &#8211; with the digits of 0,1 and the base of -2, you can represent any integer. Right afterwards I learned something even more interesting &#8211; with the&hellip;</p>
<p><a class="gb-block-post-grid-more-link gb-text-link" href="https://www.algorithm.co.il/math/fractals-in-10-minutes-no-3-the-dragon/" rel="bookmark">Read more <span class="screen-reader-text">Fractals in 10 minutes no. 3 &#8211; The Dragon</span></a></p></div></div></article>
<article id="post-58" class="gb-post-grid-item post-58 post type-post status-publish format-standard category-favourites category-fractals category-graphics category-programming category-python tag-fractals tag-python entry"><div class="gb-block-post-grid-text"><header class="gb-block-post-grid-header"><h3 class="gb-block-post-grid-title"><a href="https://www.algorithm.co.il/programming/fractals-in-10-minutes-no-2-recursive-spring/" rel="bookmark">Fractals in 10 minutes No. 2 &#8211; Recursive Spring</a></h3><div class="gb-block-post-grid-byline"><div class="gb-block-post-grid-author" itemprop="author" itemtype="https://schema.org/Person"><a class="gb-text-link" href="https://www.algorithm.co.il/author/lorg/" itemprop="url" rel="author"><span itemprop="name">lorg</span></a></div><time datetime="2007-12-19T06:00:17+02:00" class="gb-block-post-grid-date" itemprop="datePublished">2007-12-19</time></div></header><div class="gb-block-post-grid-excerpt"><p>Imagine a straight wire. Bend this wire until its ends meet. You get a ring. Next stage. Take another straight wire, bend it as before, but this time, don&#8217;t let the ends meet, instead continue bending the wire more and more, until you get a spring. Now, Think of this spring as the first wire,&hellip;</p>
<p><a class="gb-block-post-grid-more-link gb-text-link" href="https://www.algorithm.co.il/programming/fractals-in-10-minutes-no-2-recursive-spring/" rel="bookmark">Read more <span class="screen-reader-text">Fractals in 10 minutes No. 2 &#8211; Recursive Spring</span></a></p></div></div></article>
<article id="post-54" class="gb-post-grid-item post-54 post type-post status-publish format-standard category-favourites category-math category-programming category-python tag-module-usage tag-python tag-python-packages tag-statistics entry"><div class="gb-block-post-grid-text"><header class="gb-block-post-grid-header"><h3 class="gb-block-post-grid-title"><a href="https://www.algorithm.co.il/math/python-module-usage-statistics-cont/" rel="bookmark">Python module usage statistics &#8211; Cont.</a></h3><div class="gb-block-post-grid-byline"><div class="gb-block-post-grid-author" itemprop="author" itemtype="https://schema.org/Person"><a class="gb-text-link" href="https://www.algorithm.co.il/author/lorg/" itemprop="url" rel="author"><span itemprop="name">lorg</span></a></div><time datetime="2007-11-21T06:11:33+02:00" class="gb-block-post-grid-date" itemprop="datePublished">2007-11-21</time></div></header><div class="gb-block-post-grid-excerpt"><p>Well, very embarrassingly for me, turns out I had a bug in my original post and code. As per Doug&#8217;s suggestion, I tried running the script I wrote on the standard library, and got results I didn&#8217;t quite believe. So I checked them, opened socket.py, and there was an &#8220;import _socket&#8221;. However module &#8220;_socket&#8221; was&hellip;</p>
<p><a class="gb-block-post-grid-more-link gb-text-link" href="https://www.algorithm.co.il/math/python-module-usage-statistics-cont/" rel="bookmark">Read more <span class="screen-reader-text">Python module usage statistics &#8211; Cont.</span></a></p></div></div></article>
<article id="post-52" class="gb-post-grid-item post-52 post type-post status-publish format-standard category-favourites category-math category-programming category-python tag-module-usage tag-python tag-python-packages tag-statistics entry"><div class="gb-block-post-grid-text"><header class="gb-block-post-grid-header"><h3 class="gb-block-post-grid-title"><a href="https://www.algorithm.co.il/math/python-module-usage-statistics/" rel="bookmark">Python module usage statistics</a></h3><div class="gb-block-post-grid-byline"><div class="gb-block-post-grid-author" itemprop="author" itemtype="https://schema.org/Person"><a class="gb-text-link" href="https://www.algorithm.co.il/author/lorg/" itemprop="url" rel="author"><span itemprop="name">lorg</span></a></div><time datetime="2007-11-19T11:45:24+02:00" class="gb-block-post-grid-date" itemprop="datePublished">2007-11-19</time></div></header><div class="gb-block-post-grid-excerpt"><p>IMPORTANT UPDATE: The code I used to create these statistics had some bugs. The fixed statistics are available here. After reading Doug Hellman&#8217;s post about python stdlib modules he needs the documentation to, I commented there that I need the documentation for logging because I don&#8217;t use it too frequently. Later, I thought a little&hellip;</p>
<p><a class="gb-block-post-grid-more-link gb-text-link" href="https://www.algorithm.co.il/math/python-module-usage-statistics/" rel="bookmark">Read more <span class="screen-reader-text">Python module usage statistics</span></a></p></div></div></article>
</div></section>


<p></p>
</div></div></div>



<div style="padding-left:5%;padding-right:5%;padding-bottom:5%;padding-top:5%" class="wp-block-genesis-blocks-gb-container gb-block-container"><div class="gb-container-inside"><div class="gb-container-content">
<h1 class="section-title">Projects</h1>


<section class="gb-block-post-grid featuredpost aligncenter posts-gallery"><div class="gb-post-grid-items is-grid columns-3"><article id="post-919" class="gb-post-grid-item post-919 post type-post status-publish format-standard category-projects tag-deployment tag-git entry"><div class="gb-block-post-grid-text"><header class="gb-block-post-grid-header"><h3 class="gb-block-post-grid-title"><a href="https://www.algorithm.co.il/projects/how-we-deploy-with-git/" rel="bookmark">How we deploy with Git</a></h3><div class="gb-block-post-grid-byline"><div class="gb-block-post-grid-author" itemprop="author" itemtype="https://schema.org/Person"><a class="gb-text-link" href="https://www.algorithm.co.il/author/admin/" itemprop="url" rel="author"><span itemprop="name">admin</span></a></div><time datetime="2020-08-16T10:00:00+03:00" class="gb-block-post-grid-date" itemprop="datePublished">2020-08-16</time></div></header><div class="gb-block-post-grid-excerpt"><p>It seems common practice to have a staging and production branches for deploying your code. A common pattern is to push (or pull request) to these branches, then merge the changes. Then, some system watching this branch will notice, and deploy to the appropriate environment. (Another way this is done is with tags, but I&hellip;</p>
<p><a class="gb-block-post-grid-more-link gb-text-link" href="https://www.algorithm.co.il/projects/how-we-deploy-with-git/" rel="bookmark">Read more <span class="screen-reader-text">How we deploy with Git</span></a></p></div></div></article>
<article id="post-812" class="gb-post-grid-item post-812 post type-post status-publish format-standard category-projects tag-app tag-gamification tag-learntoread tag-lessons tag-mobile-development entry"><div class="gb-block-post-grid-text"><header class="gb-block-post-grid-header"><h3 class="gb-block-post-grid-title"><a href="https://www.algorithm.co.il/projects/5-useful-lessons-from-writing-an-app-for-kids/" rel="bookmark">5 useful lessons from writing an app for kids</a></h3><div class="gb-block-post-grid-byline"><div class="gb-block-post-grid-author" itemprop="author" itemtype="https://schema.org/Person"><a class="gb-text-link" href="https://www.algorithm.co.il/author/lorg/" itemprop="url" rel="author"><span itemprop="name">lorg</span></a></div><time datetime="2020-08-07T16:37:48+03:00" class="gb-block-post-grid-date" itemprop="datePublished">2020-08-07</time></div></header><div class="gb-block-post-grid-excerpt"><p>It always starts with an itch. Today, there aren&#8217;t really many good apps to teach kids to read Hebrew. The best one is &#8220;Kesem&#8217;s Monsters&#8221; &#8211; and when I tried getting my son to play it, it annoyed me. He liked playing it &#8211; but I thought it wasn&#8217;t teaching reading all that well. About&hellip;</p>
<p><a class="gb-block-post-grid-more-link gb-text-link" href="https://www.algorithm.co.il/projects/5-useful-lessons-from-writing-an-app-for-kids/" rel="bookmark">Read more <span class="screen-reader-text">5 useful lessons from writing an app for kids</span></a></p></div></div></article>
<article id="post-845" class="gb-post-grid-item post-845 post type-post status-publish format-standard category-projects tag-fiverr tag-freelancers tag-hiring tag-upwork entry"><div class="gb-block-post-grid-text"><header class="gb-block-post-grid-header"><h3 class="gb-block-post-grid-title"><a href="https://www.algorithm.co.il/projects/how-to-hire-a-freelancer-25-useful-tips/" rel="bookmark">How to hire a freelancer &#8211; 25 useful tips</a></h3><div class="gb-block-post-grid-byline"><div class="gb-block-post-grid-author" itemprop="author" itemtype="https://schema.org/Person"><a class="gb-text-link" href="https://www.algorithm.co.il/author/lorg/" itemprop="url" rel="author"><span itemprop="name">lorg</span></a></div><time datetime="2020-07-19T08:43:57+03:00" class="gb-block-post-grid-date" itemprop="datePublished">2020-07-19</time></div></header><div class="gb-block-post-grid-excerpt"><p>Over the years I&#8217;ve had many opportunities to work with freelancers. Recently a friend had a bad experience looking for freelancers, and I tried to help her find new ones. That prompted me to write a bit about my method. While not completely foolproof, it will increase your chances of finding better freelancers. Defining the&hellip;</p>
<p><a class="gb-block-post-grid-more-link gb-text-link" href="https://www.algorithm.co.il/projects/how-to-hire-a-freelancer-25-useful-tips/" rel="bookmark">Read more <span class="screen-reader-text">How to hire a freelancer &#8211; 25 useful tips</span></a></p></div></div></article>
</div></section></div></div></div>



<div style="padding-left:5%;padding-right:5%;padding-bottom:5%;padding-top:5%" class="wp-block-genesis-blocks-gb-container programming-section gb-block-container"><div class="gb-container-inside"><div class="gb-container-content">
<h1 class="section-title">Programming</h1>


<section class="gb-block-post-grid featuredpost aligncenter posts-gallery"><div class="gb-post-grid-items is-grid columns-3"><article id="post-925" class="gb-post-grid-item post-925 post type-post status-publish format-standard category-algo tag-interval tag-portion tag-tree entry"><div class="gb-block-post-grid-text"><header class="gb-block-post-grid-header"><h3 class="gb-block-post-grid-title"><a href="https://www.algorithm.co.il/programming/algo/working-with-intervals/" rel="bookmark">Working with Intervals</a></h3><div class="gb-block-post-grid-byline"><div class="gb-block-post-grid-author" itemprop="author" itemtype="https://schema.org/Person"><a class="gb-text-link" href="https://www.algorithm.co.il/author/admin/" itemprop="url" rel="author"><span itemprop="name">admin</span></a></div><time datetime="2020-08-30T07:07:59+03:00" class="gb-block-post-grid-date" itemprop="datePublished">2020-08-30</time></div></header><div class="gb-block-post-grid-excerpt"><p>Over the last couple of months my team at Flytrex had occasion to use intervals more than once, and in both cases the team asked me, &#8220;What&#8217;s the right way to solve this?&#8221;. Since this is a common problem, I thought I&#8217;d write a short post about it. Most interval problems seem deceptively simple, while&hellip;</p>
<p><a class="gb-block-post-grid-more-link gb-text-link" href="https://www.algorithm.co.il/programming/algo/working-with-intervals/" rel="bookmark">Read more <span class="screen-reader-text">Working with Intervals</span></a></p></div></div></article>
<article id="post-901" class="gb-post-grid-item post-901 post type-post status-publish format-standard category-programming tag-logging tag-logz-io tag-rookout tag-sentry entry"><div class="gb-block-post-grid-text"><header class="gb-block-post-grid-header"><h3 class="gb-block-post-grid-title"><a href="https://www.algorithm.co.il/programming/5-tips-for-more-effective-logging/" rel="bookmark">5 Tips for more effective logging</a></h3><div class="gb-block-post-grid-byline"><div class="gb-block-post-grid-author" itemprop="author" itemtype="https://schema.org/Person"><a class="gb-text-link" href="https://www.algorithm.co.il/author/admin/" itemprop="url" rel="author"><span itemprop="name">admin</span></a></div><time datetime="2020-08-02T08:27:48+03:00" class="gb-block-post-grid-date" itemprop="datePublished">2020-08-02</time></div></header><div class="gb-block-post-grid-excerpt"><p>Logging is a critical part of every serious project. If logging is not important in your project &#8211; you&#8217;re probably doing logging wrong. Here are a few lessons I learned over the years running multiple projects. 1 &#8211; Reserve ERROR for errors, and everything that is not a bug in your code shouldn&#8217;t be an&hellip;</p>
<p><a class="gb-block-post-grid-more-link gb-text-link" href="https://www.algorithm.co.il/programming/5-tips-for-more-effective-logging/" rel="bookmark">Read more <span class="screen-reader-text">5 Tips for more effective logging</span></a></p></div></div></article>
<article id="post-824" class="gb-post-grid-item post-824 post type-post status-publish format-standard category-game-development tag-bugs tag-learntoread tag-qa entry"><div class="gb-block-post-grid-text"><header class="gb-block-post-grid-header"><h3 class="gb-block-post-grid-title"><a href="https://www.algorithm.co.il/programming/game-development/qa-by-child/" rel="bookmark">QA by Child</a></h3><div class="gb-block-post-grid-byline"><div class="gb-block-post-grid-author" itemprop="author" itemtype="https://schema.org/Person"><a class="gb-text-link" href="https://www.algorithm.co.il/author/admin/" itemprop="url" rel="author"><span itemprop="name">admin</span></a></div><time datetime="2020-07-21T21:48:23+03:00" class="gb-block-post-grid-date" itemprop="datePublished">2020-07-21</time></div></header><div class="gb-block-post-grid-excerpt"><p>I recently published a home project I was working on, an app to teach children to read Hebrew. I wrote it originally to help my son learn to read Hebrew. In an early version my son was very excited to play it. He quickly understood the principle &#8211; see a word, then tap one of&hellip;</p>
<p><a class="gb-block-post-grid-more-link gb-text-link" href="https://www.algorithm.co.il/programming/game-development/qa-by-child/" rel="bookmark">Read more <span class="screen-reader-text">QA by Child</span></a></p></div></div></article>
<article id="post-797" class="gb-post-grid-item post-797 post type-post status-publish format-standard category-programming tag-chrome-extension tag-dom tag-german tag-html tag-javascript tag-language-learning tag-learnlang entry"><div class="gb-block-post-grid-text"><header class="gb-block-post-grid-header"><h3 class="gb-block-post-grid-title"><a href="https://www.algorithm.co.il/programming/learnlang-a-small-chrome-extension-for-learning-the-german-cases/" rel="bookmark">LearnLang &#8211; a small chrome extension for learning the German cases</a></h3><div class="gb-block-post-grid-byline"><div class="gb-block-post-grid-author" itemprop="author" itemtype="https://schema.org/Person"><a class="gb-text-link" href="https://www.algorithm.co.il/author/admin/" itemprop="url" rel="author"><span itemprop="name">admin</span></a></div><time datetime="2020-03-23T21:54:20+02:00" class="gb-block-post-grid-date" itemprop="datePublished">2020-03-23</time></div></header><div class="gb-block-post-grid-excerpt"><p>I&#8217;ve been learning German for quite some time now. Some months ago, it came to the point where I was stuck &#8211; in order to progress I had to learn the German cases by heart. It&#8217;s not a lot of data, and being able to understand it is relatively straightforward, however knowing it actively as&hellip;</p>
<p><a class="gb-block-post-grid-more-link gb-text-link" href="https://www.algorithm.co.il/programming/learnlang-a-small-chrome-extension-for-learning-the-german-cases/" rel="bookmark">Read more <span class="screen-reader-text">LearnLang &#8211; a small chrome extension for learning the German cases</span></a></p></div></div></article>
<article id="post-788" class="gb-post-grid-item post-788 post type-post status-publish format-standard has-post-thumbnail category-programming tag-corona tag-pandemic tag-pygame tag-python tag-simulation entry"><div class="gb-block-post-grid-image"><a href="https://www.algorithm.co.il/programming/writing-a-pandemic-simulation/" rel="bookmark" aria-hidden="true" tabindex="-1"><img width="999" height="852" src="https://www.algorithm.co.il/wp-content/uploads/2020/03/simpandemic-screenshot.png" class="attachment-full size-full" alt="" loading="lazy" srcset="https://www.algorithm.co.il/wp-content/uploads/2020/03/simpandemic-screenshot.png 999w, https://www.algorithm.co.il/wp-content/uploads/2020/03/simpandemic-screenshot-300x256.png 300w, https://www.algorithm.co.il/wp-content/uploads/2020/03/simpandemic-screenshot-768x655.png 768w" sizes="(max-width: 999px) 100vw, 999px" /></a></div><div class="gb-block-post-grid-text"><header class="gb-block-post-grid-header"><h3 class="gb-block-post-grid-title"><a href="https://www.algorithm.co.il/programming/writing-a-pandemic-simulation/" rel="bookmark">Writing a pandemic simulation</a></h3><div class="gb-block-post-grid-byline"><div class="gb-block-post-grid-author" itemprop="author" itemtype="https://schema.org/Person"><a class="gb-text-link" href="https://www.algorithm.co.il/author/admin/" itemprop="url" rel="author"><span itemprop="name">admin</span></a></div><time datetime="2020-03-19T07:15:21+02:00" class="gb-block-post-grid-date" itemprop="datePublished">2020-03-19</time></div></header><div class="gb-block-post-grid-excerpt"><p>Over the last weekend I felt like programming something fun and easy, so I thought, why not write yet another pandemic/epidemic simulation. So between helping a crying child and preparing lunch, I created simpandemic. It&#8217;s small, simplistic, but easy to play with and change parameters. As a toy project, it&#8217;s far from perfect. I implemented&hellip;</p>
<p><a class="gb-block-post-grid-more-link gb-text-link" href="https://www.algorithm.co.il/programming/writing-a-pandemic-simulation/" rel="bookmark">Read more <span class="screen-reader-text">Writing a pandemic simulation</span></a></p></div></div></article>
<article id="post-773" class="gb-post-grid-item post-773 post type-post status-publish format-standard category-programming tag-stackoverflow entry"><div class="gb-block-post-grid-text"><header class="gb-block-post-grid-header"><h3 class="gb-block-post-grid-title"><a href="https://www.algorithm.co.il/programming/how-i-learned-to-stop-worrying-and-actually-use-stackoverflow/" rel="bookmark">How I learned to stop worrying and actually use StackOverflow</a></h3><div class="gb-block-post-grid-byline"><div class="gb-block-post-grid-author" itemprop="author" itemtype="https://schema.org/Person"><a class="gb-text-link" href="https://www.algorithm.co.il/author/admin/" itemprop="url" rel="author"><span itemprop="name">admin</span></a></div><time datetime="2020-03-12T18:50:16+02:00" class="gb-block-post-grid-date" itemprop="datePublished">2020-03-12</time></div></header><div class="gb-block-post-grid-excerpt"><p>So apparently almost all of the developers in the world are using stackoverflow. However many developers just use StackOverflow to lookup answers, and rarely to ask their own questions. Answering other people&#8217;s questions is of course rarer still. Up until recently I was the same: I wrote a few questions in StackOverflow, and even answered&hellip;</p>
<p><a class="gb-block-post-grid-more-link gb-text-link" href="https://www.algorithm.co.il/programming/how-i-learned-to-stop-worrying-and-actually-use-stackoverflow/" rel="bookmark">Read more <span class="screen-reader-text">How I learned to stop worrying and actually use StackOverflow</span></a></p></div></div></article>
</div></section></div></div></div>
</div></article></main>	<a href="#" class="button scroll-top" id="scroll-top">
 		<i class="arrow up"></i>
	</a>
	</div></div></div><footer class="site-footer" itemscope itemtype="https://schema.org/WPFooter"><div class="wrap">	<div class="flexbox stack-1280">
		
		<div class="logo-footer flex-1 flex-item">
			<small>&#x000A9;&nbsp;2021 <a href="https://www.algorithm.co.il/">Algorithm.co.il</a></small>
			<!-- <img src="https://www.algorithm.co.il/wp-content/themes/algorithm/images/logo/logo.svg" alt="COMPANY NAME logo" /> -->
		</div>
		
	</div>
	</div></footer></div>	<script type="text/javascript">
		function genesisBlocksShare( url, title, w, h ){
			var left = ( window.innerWidth / 2 )-( w / 2 );
			var top  = ( window.innerHeight / 2 )-( h / 2 );
			return window.open(url, title, 'toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, copyhistory=no, width=600, height=600, top='+top+', left='+left);
		}
	</script>
	<script type='text/javascript' src='https://www.algorithm.co.il/wp-content/plugins/genesis-blocks/dist/assets/js/dismiss.js?ver=1621550315' id='genesis-blocks-dismiss-js-js'></script>
<script type='text/javascript' src='https://www.algorithm.co.il/wp-content/plugins/wp-syntax/js/wp-syntax.js?ver=1.1' id='wp-syntax-js-js'></script>
<script type='text/javascript' src='https://www.algorithm.co.il/wp-content/themes/genesis/lib/js/skip-links.min.js?ver=3.3.3' id='skip-links-js'></script>
<script type='text/javascript' id='algorithm-responsive-menu-js-extra'>
/* <![CDATA[ */
var genesis_responsive_menu = {"mainMenu":"Menu","menuIconClass":"dashicons-before dashicons-menu","subMenu":"Submenu","subMenuIconClass":"dashicons-before dashicons-arrow-down-alt2","menuClasses":{"combine":[".nav-primary"],"others":[]}};
/* ]]> */
</script>
<script type='text/javascript' src='https://www.algorithm.co.il/wp-content/themes/algorithm/js/responsive-menus.min.js?ver=1.0' id='algorithm-responsive-menu-js'></script>
<script type='text/javascript' src='https://www.algorithm.co.il/wp-content/themes/algorithm/js/algorithm.js?ver=1.0' id='algorithm-js'></script>
<script type='text/javascript' src='https://www.algorithm.co.il/wp-content/themes/algorithm/js/smooth-scroll.js?ver=1.0' id='smooth-scroll-js'></script>
<script type='text/javascript' src='https://www.algorithm.co.il/wp-includes/js/wp-embed.min.js?ver=5.5.5' id='wp-embed-js'></script>
<script src='https://stats.wp.com/e-202124.js' defer></script>
<script>
	_stq = window._stq || [];
	_stq.push([ 'view', {v:'ext',j:'1:9.4.2',blog:'2506210',post:'937',tz:'3',srv:'www.algorithm.co.il'} ]);
	_stq.push([ 'clickTrackerInit', '2506210', '937' ]);
</script>
</body></html>
