{"id":571,"date":"2018-04-24T05:58:04","date_gmt":"2018-04-24T02:58:04","guid":{"rendered":"http:\/\/www1.ngtech.co.il\/wpe\/?p=571"},"modified":"2018-04-24T05:58:13","modified_gmt":"2018-04-24T02:58:13","slug":"the-code-itself-speaks","status":"publish","type":"post","link":"https:\/\/www1.ngtech.co.il\/wpe\/2018\/04\/24\/the-code-itself-speaks\/","title":{"rendered":"The code itself speaks"},"content":{"rendered":"<h1 style=\"text-align: center;\">The code itself speaks<\/h1>\n<p style=\"text-align: center;\">The digits 0 and 1 down below are finding their way to the earth.<\/p>\n<p>There is an old &#8220;argument&#8221; on how teaching should be done. Some believes\u00a0 that there is a specific order to things when teaching and learning. The biggest example I remember was Python is prettier then other languages, some named it as the &#8220;sexy&#8221; Programming Language. And indeed there are things that can be seen and can be read between the lines of code.<\/p>\n<p>There is a fingerprint in the code!<\/p>\n<p>But fingerprints and patterns or checksum algorithms are doomed to loos their place when the CS world due to a single reason:<br \/>\nHumans can create more then any and all of the computers on the planet together.<\/p>\n<p>But still like any text there is wisdom in most of the pieces of code I had the pleasure to review or write. We as coders try to write in a functional or object oriented style while we are missing specific things from the picture.<\/p>\n<p>We all do not know entirely what the &#8220;wisdom of the code&#8221; truly means. After years of IT support I can clearly say that there something like 4 types of code reviewers:<\/p>\n<ul>\n<li>The Code is what it is and since it is the code then either the coder should be ashamed of it.<\/li>\n<li>The Code is there to contain more then just the code itself, it has another upper level or metadata which not all may see.<\/li>\n<li>The Code is what it is and the coder should be proud of it&#8217;s work.<\/li>\n<li>The code is code and have lots of layers from the 0 and 1 layer lower and above and it contains some of the coder special spice.<\/li>\n<\/ul>\n<p>I believe that the above 4 are only one way to look at this picture but I want to take into another direction.<\/p>\n<p>I have experience with open source(GPL\\BSD\\Others) for at-least 10 years and I have seen pieces of code that hunted me for weeks.<br \/>\nI mean: seriously, why the code is not doing what it suppose to do?<br \/>\nWhy when read the code it makes sense but eventually at run-time to does something unexpected. 20 Developers and a 5 QA testers are not enough?<\/p>\n<p>So in the bottom line I believe that if the code was written based on a desired functionality or divided into objectives or it&#8217;s not &#8220;sexy&#8221; it is still a good way to tell a story,<\/p>\n<p>Many of us are blessed with the words &#8220;genius&#8221; or &#8220;techie&#8221; or any other canonical name for our art and profession.<\/p>\n<h2 style=\"text-align: center;\">The bottom line<\/h2>\n<p>I believe that the sexiness of the code is not what&#8217;s attractive in it.<br \/>\nHowever I do believe that some &#8220;prettificiation&#8221; can help others to understand by themselves many things about the code itself and also about the author.<\/p>\n<h2 style=\"text-align: center;\">Squid-Cache and ME<\/h2>\n<p>I have published Squid-Cache RPM packages in the last couple years but now I&#8217;m starting to do things in slow speed and low gear.<\/p>\n<p>The reason for that is that there are couple very nice alternatives out there which I used and found that are more suitable for the year 2018. If I can run a proxy that does the same thing but can utilize all of the cpu cores and in a balanced way I would make the effort to migrate from code that is based on 1985 style to one that is more advanced and also more reliable.<\/p>\n<p>If you have found\u00a0 Squid-Cache as your choice for the task and it works for you then great but&#8230; I found that it might work for specific clients but not in a network that has couple smart phones or tables in it.<\/p>\n<p>Squid Version 4 on_unsupported feature brings something new to Squid-Cache and I believe that it might help to many like SKYPE to some how use Squid-Cache\u00a0 without suffering too much.<\/p>\n<p>I am waiting for Squid 4 stable release for quite some time with hope that we will have a new era. The issue is that even with my basic testing I am pretty sure that there is some memory overhead somewhere and this is one of the last pieces before the next step.<\/p>\n<p>All The Bests,<br \/>\nEliezer<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The code itself speaks The digits 0 and 1 down below are finding their way to the earth. There is an old &#8220;argument&#8221; on how teaching should be done. Some believes\u00a0 that there is a specific order to things when teaching and learning. The biggest example I remember was Python is prettier then other languages, &hellip; <a href=\"https:\/\/www1.ngtech.co.il\/wpe\/2018\/04\/24\/the-code-itself-speaks\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">The code itself speaks<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[12,10],"tags":[],"class_list":["post-571","post","type-post","status-publish","format-standard","hentry","category-squid-4-0","category-squid-release"],"_links":{"self":[{"href":"https:\/\/www1.ngtech.co.il\/wpe\/wp-json\/wp\/v2\/posts\/571","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www1.ngtech.co.il\/wpe\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www1.ngtech.co.il\/wpe\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www1.ngtech.co.il\/wpe\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www1.ngtech.co.il\/wpe\/wp-json\/wp\/v2\/comments?post=571"}],"version-history":[{"count":1,"href":"https:\/\/www1.ngtech.co.il\/wpe\/wp-json\/wp\/v2\/posts\/571\/revisions"}],"predecessor-version":[{"id":572,"href":"https:\/\/www1.ngtech.co.il\/wpe\/wp-json\/wp\/v2\/posts\/571\/revisions\/572"}],"wp:attachment":[{"href":"https:\/\/www1.ngtech.co.il\/wpe\/wp-json\/wp\/v2\/media?parent=571"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www1.ngtech.co.il\/wpe\/wp-json\/wp\/v2\/categories?post=571"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www1.ngtech.co.il\/wpe\/wp-json\/wp\/v2\/tags?post=571"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}