tag:blogger.com,1999:blog-63385148969976077272024-03-13T09:57:38.846+08:00Battur's WeblogЗөв явбал, зөөлөн замбуулин...Benhttp://www.blogger.com/profile/08655978186125674870noreply@blogger.comBlogger83125tag:blogger.com,1999:blog-6338514896997607727.post-52074080034373161902017-02-11T14:11:00.000+08:002017-02-12T01:55:02.897+08:00Хоёр Шуудай<a href="http://mse.isri.cmu.edu/software-engineering/Courses/17-655-architectures-of-software-systems.html">Architectures for Software Systems</a> нэртэй, унших материалаар дарсан хичээлийг энэ улиралд авч байгаа бөгөөд өнөөдөр багшийн ярианаас сонссон нэг сонирхолтой хошигнолыг энд тэмдэглэж үлдээе гэж бодлоо. Програм хангамжийн архитект 1) азаар дүүрэн нэг шуудай, 2) хоосон дахиад нэг шуудай, нийт хоёр шуудайтай ажлын гараагаа эхэлдэг аж. Гол зүйл энд юу вэ гэхээр, эхний шуудай хоосрохоос өмнө хоёр дахь шуудайг туршлагаар дүүргэх ёстой аж. Ингэж чадвал, сая өөрийгөө архитект болох зүг чигээн олж байна гэж дүгнэх хэрэгтэй гэнэ :) Тоглоом болгож хэлсэн ч гэсэн, үнэний жинтэй үгс гэж бодном.Benhttp://www.blogger.com/profile/08655978186125674870noreply@blogger.com0tag:blogger.com,1999:blog-6338514896997607727.post-18935419331659188192017-01-22T13:24:00.001+08:002017-01-22T13:25:48.105+08:00Quote of the dayAlways design a thing by considering it in its next larger context—a chair in a room, a room in a house, a house in an environment, an environment in a city plan.<br />
<br />
<div style="text-align: right;">
<b>Gottlieb Eliel Saarinen (1873–1950)</b></div>
Benhttp://www.blogger.com/profile/08655978186125674870noreply@blogger.com0tag:blogger.com,1999:blog-6338514896997607727.post-38119939445627546762017-01-14T07:13:00.000+08:002017-02-12T01:57:18.029+08:00When Bad Requirements Happen to Good People<div class="tr_bq">
Super-famous and very good-looking authors <a href="http://www.karlwiegers.com/">Karl Wiegers</a> and Joy Beatty did a fabulous job of describing this problem in a section titled "When Bad Requirements Happen to Good People" from their amazing book <a href="https://www.amazon.com/Software-Requirements-Developer-Best-Practices/dp/0735679665/ref=sr_1_1?ie=UTF8&qid=1484349081&sr=8-1&keywords=software+requirements"><i>Software Requirements</i>, Third Edition (Microsoft Press, 2013)</a>, reprinted here with permission:</div>
<br />
<blockquote>
<b>When Bad Requirements Happen to Good People</b></blockquote>
<blockquote>
The major consequence of requirements problems is rework—doing again something that you thought was already done—late in development or after release. Rework often consumes 30 to 50 percent of your total development cost, and requirements errors can account for 70 to 85 percent of the rework cost. Some rework does add value and improves the product, but excessive rework is wasteful and frustrating. Imagine how different your life would be if you could cut the rework effort in half! Your team members could build better products faster and perhaps even go home on time. Creating better requirements is an investment, not just a cost.</blockquote>
<blockquote>
It can cost far more to correct a defect that’s found late in the project than to fix it shortly after its creation. Suppose it costs $1 (on a relative scale) to find and fix a requirement defect while you’re still working on the requirements. If you discover that error during design instead, you have to pay the $1 to fix the requirement error, plus another $2 or $3 to redo the design that was based on the incorrect requirement. Suppose, though, that no one finds the error until a user calls with a problem. Depending on the type of system, the cost to correct a requirement defect found in operation can be $100 or more on this relative scale. One of my consulting clients determined that they spent an average of $200 of labor effort to find and fix a defect in their information systems using the quality technique of software inspection, a type of peer review. In contrast, they spent an average of $4,200 to fix a single defect reported by the user, an amplification factor of 21. Preventing requirements errors and catching them early clearly has a huge leveraging effect on reducing rework.</blockquote>
<blockquote>
Shortcomings in requirements practices pose many risks to project success, where success means delivering a product that satisfies the user’s functional and quality expectations at the agreed-upon cost and schedule.</blockquote>
Benhttp://www.blogger.com/profile/08655978186125674870noreply@blogger.com0tag:blogger.com,1999:blog-6338514896997607727.post-43256137828312946462017-01-03T10:54:00.002+08:002017-06-08T06:08:35.778+08:00Forgetting<blockquote class="tr_bq">
We’ve talked about encoding, storage, and retrieval, the first three steps of declarative memory. The last step is forgetting. Forgetting plays a vital role in our ability to function for a deceptively simple reason. Forgetting allows us to prioritize. Anything irrelevant to our survival will take up wasteful cognitive space if we assign it the same priority as events critical to our survival. So we don’t. At least, most of us don’t. </blockquote>
<blockquote class="tr_bq">
Solomon Shereshevskii, a Russian journalist born in 1886, seemed to have a virtually unlimited memory. Scientists would give him a list of things to memorize, usually combinations of numbers and letters, and then test his recall. Shereshevskii needed only three or four seconds to “visualize” (his words) each item. Then he could repeat the lists back perfectly, forward or backward—even lists with more than 70 elements. In one experiment, developmental psychologist Alexander Luria exposed Shereshevskii to a complex formula of 30 letters and numbers. After a single recall test, which Shereshevskii accomplished flawlessly, the researcher put the list in a safe-deposit box and waited 15 years. Luria then took out the list, found Shereshevskii, and asked him to repeat the formula. Without hesitation, he reproduced the list on the spot, again without error.</blockquote>
<blockquote class="tr_bq">
Shereshevskii’s memory of everything he encountered was so clear, so detailed, so unending, he lost the ability to organize it into meaningful patterns. Like living in a permanent snowstorm, he saw much of his life as blinding flakes of unrelated sensory information. He couldn’t see the “big picture,” meaning he couldn’t focus on the ways two things might be related, look for commonalities, and discover larger patterns. Poems, carrying their typical heavy load of metaphor and simile, were incomprehensible to him. Shereshevskii couldn’t forget, and it affected the way he functioned. </blockquote>
<blockquote class="tr_bq">
We have many types of forgetting, categories cleverly enumerated by researcher Dan Schacter in his book The Seven Sins of Memory. Tip-of-the-tongue lapses, absentmindedness, blocking habits, misattribution, biases, suggestibility—the list doesn’t sound good. But they all have one thing in common. They allow us to drop pieces of information in favor of others. In so doing, forgetting helped us to conquer the Earth.</blockquote>
<div>
<i><br /></i></div>
<div>
<i>Source:</i></div>
<div>
<a href="http://www.johnmedina.com/">John Medina</a>. <i><a href="https://www.amazon.com/Brain-Rules-Updated-Expanded-Principles/dp/098326337X/ref=sr_1_1?ie=UTF8&qid=1483133296&sr=8-1&keywords=brain+rules">Brain Rules: 12 Principles for Surviving and Thriving at Work, Home, and School</a></i> <i>(pp. 155)</i>. 2014. Pear Press</div>
Benhttp://www.blogger.com/profile/08655978186125674870noreply@blogger.com0tag:blogger.com,1999:blog-6338514896997607727.post-18080275087182699052016-12-27T12:27:00.000+08:002016-12-27T12:28:01.734+08:00Evolution of an Algorithm<div style="color: #252525; line-height: inherit; margin-bottom: 0.5em; margin-top: 0.5em;">
<span style="font-family: inherit;">In linear algebra, the <b>Coppersmith–Winograd algorithm</b>, named after Don Coppersmith and Shmuel Winograd, was the asymptotically fastest known matrix multiplication algorithm until 2010. It can multiply two <span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="clip: rect(1px 1px 1px 1px); display: none; height: 1px; opacity: 0; overflow: hidden; position: absolute; width: 1px;"><math xmlns="http://www.w3.org/1998/Math/MathML"><semantics><annotation encoding="application/x-tex">{\displaystyle n\times n}</annotation></semantics></math></span><span style="border-color: initial; border-image: initial; border-width: initial; height: 1.676ex; vertical-align: -0.338ex; width: 5.661ex;"><img alt="n\times n" aria-hidden="true" class="mwe-math-fallback-image-inline" src="https://wikimedia.org/api/rest_v1/media/math/render/svg/59d2b4cb72e304526cf5b5887147729ea259da78" style="border: none; display: inline-block; height: 1.676ex; margin: 0px; vertical-align: -0.338ex; width: 5.661ex;" /></span> matrices in <span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="clip: rect(1px 1px 1px 1px); display: none; height: 1px; opacity: 0; overflow: hidden; position: absolute; width: 1px;"><math xmlns="http://www.w3.org/1998/Math/MathML"><semantics><annotation encoding="application/x-tex">{\displaystyle O(n^{2.375477})}</annotation></semantics></math></span><span style="border-color: initial; border-image: initial; border-width: initial; height: 3.176ex; vertical-align: -0.838ex; width: 11.522ex;"><img alt="O(n^{2.375477})" aria-hidden="true" class="mwe-math-fallback-image-inline" src="https://wikimedia.org/api/rest_v1/media/math/render/svg/06117047260f67848791661bece261b4c82c1711" style="border: none; display: inline-block; height: 3.176ex; margin: 0px; vertical-align: -0.838ex; width: 11.522ex;" /></span> time. This is an improvement over the naïve <span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="clip: rect(1px 1px 1px 1px); display: none; height: 1px; opacity: 0; overflow: hidden; position: absolute; width: 1px;"><math xmlns="http://www.w3.org/1998/Math/MathML"><semantics><annotation encoding="application/x-tex">{\displaystyle O(n^{3})}</annotation></semantics></math></span><span style="border-color: initial; border-image: initial; border-width: initial; height: 3.176ex; vertical-align: -0.838ex; width: 6.081ex;"><img alt="O(n^{3})" aria-hidden="true" class="mwe-math-fallback-image-inline" src="https://wikimedia.org/api/rest_v1/media/math/render/svg/6b04f5c5cfea38f43406d9442387ad28555e2609" style="border: none; display: inline-block; height: 3.176ex; margin: 0px; vertical-align: -0.838ex; width: 6.081ex;" /></span> time algorithm and the <span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="clip: rect(1px 1px 1px 1px); display: none; height: 1px; opacity: 0; overflow: hidden; position: absolute; width: 1px;"><math xmlns="http://www.w3.org/1998/Math/MathML"><semantics><annotation encoding="application/x-tex">{\displaystyle O(n^{2.807355})}</annotation></semantics></math></span><span style="border-color: initial; border-image: initial; border-width: initial; height: 3.176ex; vertical-align: -0.838ex; width: 11.522ex;"><img alt="O(n^{2.807355})" aria-hidden="true" class="mwe-math-fallback-image-inline" src="https://wikimedia.org/api/rest_v1/media/math/render/svg/3d45ef36d3915cc5c2aff7780520bca88d3055e5" style="border: none; display: inline-block; height: 3.176ex; margin: 0px; vertical-align: -0.838ex; width: 11.522ex;" /></span> time Strassen algorithm. Algorithms with better asymptotic running time than the Strassen algorithm are rarely used in practice, because the large constant factors in their running times make them impractical. It is possible to improve the exponent further; however, the exponent must be at least 2 (because an <span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="clip: rect(1px 1px 1px 1px); display: none; height: 1px; opacity: 0; overflow: hidden; position: absolute; width: 1px;"><math xmlns="http://www.w3.org/1998/Math/MathML"><semantics><annotation encoding="application/x-tex">{\displaystyle n\times n}</annotation></semantics></math></span><span style="border-color: initial; border-image: initial; border-width: initial; height: 1.676ex; vertical-align: -0.338ex; width: 5.661ex;"><img alt="n\times n" aria-hidden="true" class="mwe-math-fallback-image-inline" src="https://wikimedia.org/api/rest_v1/media/math/render/svg/59d2b4cb72e304526cf5b5887147729ea259da78" style="border: none; display: inline-block; height: 1.676ex; margin: 0px; vertical-align: -0.338ex; width: 5.661ex;" /></span> matrix has <span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="clip: rect(1px 1px 1px 1px); display: none; height: 1px; opacity: 0; overflow: hidden; position: absolute; width: 1px;"><math xmlns="http://www.w3.org/1998/Math/MathML"><semantics><annotation encoding="application/x-tex">{\displaystyle n^{2}}</annotation></semantics></math></span><span style="border-color: initial; border-image: initial; border-width: initial; height: 2.676ex; vertical-align: -0.338ex; width: 2.467ex;"><img alt="n^{2}" aria-hidden="true" class="mwe-math-fallback-image-inline" src="https://wikimedia.org/api/rest_v1/media/math/render/svg/ac9810bbdafe4a6a8061338db0f74e25b7952620" style="border: none; display: inline-block; height: 2.676ex; margin: 0px; vertical-align: -0.338ex; width: 2.467ex;" /></span> values, and all of them have to be read at least once to calculate the exact result).</span></div>
<div style="color: #252525; line-height: inherit; margin-bottom: 0.5em; margin-top: 0.5em;">
<span style="font-family: inherit;">In 2010, Andrew Stothers gave an improvement to the algorithm, <span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="clip: rect(1px 1px 1px 1px); display: none; height: 1px; opacity: 0; overflow: hidden; position: absolute; width: 1px;"><math xmlns="http://www.w3.org/1998/Math/MathML"><semantics><annotation encoding="application/x-tex">{\displaystyle O(n^{2.374}).}</annotation></semantics></math></span><img alt="O(n^{{2.374}})." aria-hidden="true" class="mwe-math-fallback-image-inline" src="https://wikimedia.org/api/rest_v1/media/math/render/svg/b1cd88b4f3120711a169d6952810f3940252af4c" style="border: none; display: inline-block; height: 3.176ex; margin: 0px; vertical-align: -0.838ex; width: 9.691ex;" /> In 2011, Virginia Williams combined a mathematical short-cut from Stothers' paper with her own insights and automated optimization on computers, improving the bound to <span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="clip: rect(1px 1px 1px 1px); display: none; height: 1px; opacity: 0; overflow: hidden; position: absolute; width: 1px;"><math xmlns="http://www.w3.org/1998/Math/MathML"><semantics><annotation encoding="application/x-tex">{\displaystyle O(n^{2.3728642}).}</annotation></semantics></math></span><img alt="O(n^{2.3728642})." aria-hidden="true" class="mwe-math-fallback-image-inline" src="https://wikimedia.org/api/rest_v1/media/math/render/svg/f1b0c9d74fe9c88b80b2f61798532defcc210561" style="border: none; display: inline-block; height: 3.176ex; margin: 0px; vertical-align: -0.838ex; width: 13.008ex;" /> In 2014, François Le Gall simplified the methods of Williams and obtained an improved bound of <span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="clip: rect(1px 1px 1px 1px); display: none; height: 1px; opacity: 0; overflow: hidden; position: absolute; width: 1px;"><math xmlns="http://www.w3.org/1998/Math/MathML"><semantics><annotation encoding="application/x-tex">{\displaystyle O(n^{2.3728639}).}</annotation></semantics></math></span><img alt="O(n^{2.3728639})." aria-hidden="true" class="mwe-math-fallback-image-inline" src="https://wikimedia.org/api/rest_v1/media/math/render/svg/7443808854f285e6d32cc533f252c0156fe21a36" style="border: none; display: inline-block; height: 3.176ex; margin: 0px; vertical-align: -0.838ex; width: 13.008ex;" /></span></div>
<div style="color: #252525; line-height: inherit; margin-bottom: 0.5em; margin-top: 0.5em;">
<span style="font-family: inherit;">The Coppersmith–Winograd algorithm is frequently used as a building block in other algorithms to prove theoretical time bounds. However, unlike the Strassen algorithm, it is not used in practice because it only provides an advantage for matrices so large that they cannot be processed by modern hardware.</span></div>
<span style="font-family: inherit;"><br /></span>
<span style="font-family: inherit;">Source: <a href="https://en.wikipedia.org/wiki/Coppersmith%E2%80%93Winograd_algorithm">Wikipedia, Coppersmith–Winograd algorithm</a></span><br />
<br />Benhttp://www.blogger.com/profile/08655978186125674870noreply@blogger.com0tag:blogger.com,1999:blog-6338514896997607727.post-16918583182201752522016-12-27T02:21:00.000+08:002016-12-28T04:51:20.054+08:00Karatsuba Fast Multiplication Algorithm<span style="font-family: inherit;">The </span><b style="font-family: inherit;">Karatsuba algorithm</b><span style="font-family: inherit;"> is a fast </span><span style="font-family: inherit;">multiplication algorithm</span><span style="font-family: inherit;">. It was discovered by </span><span style="font-family: inherit;">Anatoly Karatsuba</span><span style="font-family: inherit;"> in 1960 and published in 1962.</span><span style="font-family: inherit;"> It reduces the multiplication of two </span><i style="font-family: inherit;">n</i><span style="font-family: inherit;">-digit numbers to at most </span><span style="font-family: inherit;"><img alt="n^{\log _{2}3}\approx n^{1.585}" aria-hidden="true" class="mwe-math-fallback-image-inline" src="https://wikimedia.org/api/rest_v1/media/math/render/svg/6da16366b6718b3e8fe40d5d08c8c06ea107c6b9" style="border: none; display: inline-block; height: 2.676ex; margin: 0px; vertical-align: -0.338ex; width: 14.344ex;" /></span><span style="font-family: inherit;"> single-digit multiplications in general (and exactly </span><span style="font-family: inherit;"><img alt="n^{\log _{2}3}" aria-hidden="true" class="mwe-math-fallback-image-inline" src="https://wikimedia.org/api/rest_v1/media/math/render/svg/d2c68b25865416586c8f26e4e53c126820e05e6f" style="border: none; display: inline-block; height: 2.676ex; margin: 0px; vertical-align: -0.338ex; width: 5.815ex;" /></span><span style="font-family: inherit;"> when </span><i style="font-family: inherit;">n</i><span style="font-family: inherit;"> is a power of 2). It is therefore faster than the </span><span style="font-family: inherit;">classical</span><span style="font-family: inherit;"> algorithm, which requires </span><i style="font-family: inherit;">n</i><sup style="color: #252525; font-family: inherit; line-height: 1;">2</sup><span style="font-family: inherit;"> single-digit products. For example, the Karatsuba algorithm requires 3</span><sup style="color: #252525; font-family: inherit; line-height: 1;">10</sup><span style="font-family: inherit;"> = 59,049 single-digit multiplications to multiply two 1024-digit numbers (</span><i style="font-family: inherit;">n</i><span style="font-family: inherit;"> = 1024 = 2</span><sup style="color: #252525; font-family: inherit; line-height: 1;">10</sup><span style="font-family: inherit;">), whereas the classical algorithm requires (2</span><sup style="color: #252525; font-family: inherit; line-height: 1;">10</sup><span style="font-family: inherit;">)</span><sup style="color: #252525; font-family: inherit; line-height: 1;">2</sup><span style="font-family: inherit;"> = 1,048,576.</span><br />
<span style="font-family: inherit;"><br /></span>
<span style="font-family: inherit;"><span style="color: #252525;">The Karatsuba algorithm was the first multiplication algorithm asymptotically faster than the quadratic "grade school" algorithm. The </span>Toom–Cook algorithm<span style="color: #252525;"> is a faster generalization of Karatsuba's method, and the </span>Schönhage–Strassen algorithm<span style="color: #252525;"> is even faster, for sufficiently large </span><i style="color: #252525;">n</i><span style="color: #252525;">. </span></span><span style="color: #252525; font-family: inherit;">Source: </span><a href="https://en.wikipedia.org/wiki/Karatsuba_algorithm" style="font-family: inherit;">https://en.wikipedia.org/wiki/Karatsuba_algorithm</a><br />
<br />
Pseudocode:
<br />
<div align="left" style="line-height: 100%; margin-bottom: 0in;">
<pre>procedure karatsuba(num1, num2)
if (num1 < 10) or (num2 < 10)
return num1*num2
// calculates the size of the numbers
M = max(size_base10(num1), size_base10(num2))
N = M/2
// split the digit sequences about the middle
high1, low1 = split_at(num1, N)
high2, low2 = split_at(num2, N)
// 3 calls made to numbers approximately half the size
z0 = karatsuba(low1,low2)
z1 = karatsuba((low1+high1),(low2+high2))
z2 = karatsuba(high1,high2)
return (z2*10^(2*N))+((z1-z2-z0)*10^(N))+(z0)
</pre>
</div>
<br />
<span style="font-family: inherit;"><span style="color: #252525;">Implementation:</span></span><br />
<div align="left" style="line-height: 100%; margin-bottom: 0in;">
<pre style="font-size: 90%;">public static BigInteger karatsuba(BigInteger x, BigInteger y) {
// cutoff to brute force
int M = Math.max(x.bitLength(), y.bitLength());
if (M <= 2000) return x.multiply(y); // optimize this parameter
// number of bits divided by 2, rounded up
int N = (M / 2) + (M % 2);
// x = a + 2^N b, y = c + 2^N d
// x = low1 + 2^N high1, y = low2 + 2^N high2
BigInteger high1 = x.shiftRight(N);
BigInteger low1 = x.subtract(high1.shiftLeft(N));
BigInteger high2 = y.shiftRight(N);
BigInteger low2 = y.subtract(high2.shiftLeft(N));
// compute sub-expressions
BigInteger z0 = karatsuba(low1, low2);
BigInteger z1 = karatsuba(low1.add(high1), low2.add(high2));
BigInteger z2 = karatsuba(high1, high2);
return z0.add(z1.subtract(z0).subtract(z2).shiftLeft(N)).add(z2.shiftLeft(2*N));
}
</pre>
<span style="color: #252525; font-size: 90%;"><br /></span>
<span style="color: #252525;">Source: </span><span style="color: #252525;"><a href="http://introcs.cs.princeton.edu/java/99crypto/Karatsuba.java.html">http://introcs.cs.princeton.edu/java/99crypto/Karatsuba.java.html</a></span><br />
<div style="font-size: 90%;">
<span style="color: #252525;"><br /></span></div>
</div>
Benhttp://www.blogger.com/profile/08655978186125674870noreply@blogger.com0tag:blogger.com,1999:blog-6338514896997607727.post-19322708278496242292016-12-13T14:44:00.003+08:002018-01-19T00:59:23.758+08:00Товьёгтой, нийлмэл PDF файл үүсгэх ньХичээлийн улирлын эцэст, шалгалтын өмнөхөн, оюутнууд бид баахан PPT, PDF файл сөхөж харах хэрэгтэй болдог. Жишээлэхэд одоо авч буй <a href="http://www.heinz.cmu.edu/academic-resources/course-results/course-details/index.aspx?cid=572">Network & Internet Security</a> хичээл гэхэд л 37 PPT, PDF файл хосолсон слайд, нэмэлт унших материалтай. Энэ бүх файлыг нэгбүрчлэн нээнэ гэдэг их төвөгтэйн дээр, нэгдсэн хайлт хийх боломжоор тун маруу.<br />
<div>
<br /></div>
<div>
PPT файлыг PDF формат руу хөрвүүлээд, гарсан PDF файлуудаа Линуксын <a href="https://blog.dbrgn.ch/2013/8/14/merge-multiple-pdfs/">pdfunite</a> коммандаар хялбархан нэгтгэж болох ч, товьёг гаргаж өгдөггүй болохоор баахан чамлалттай. Нэг том PDF файл дотроо хүссэн хичээл рүү гээ үсэрч чадаж байвал нь дөхөмтэйсэн.</div>
<div>
<br /></div>
<div>
Ямартай ч, хичээлийнхээ слайдыг бүгдийг нь PDF рүү хөрвүүлчихлээ. <a href="https://github.com/bronson/pdfdir">pdfdir</a> гэх нээлттэй эхийн програм ашиглаад товьёгтой, нэг том PDF файл үүсгэх гэтэл алдаа заагаад болсонгүй. Алдааг нухаж байх зав байсангүй тул, дараагийн програм болох <a href="http://www.sejda.org/">Sejda Console</a>-г туршиж үзэв. </div>
<div>
<br /></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;"><b>sejda-console merge -b one_entry_each_doc -f $(ls netsec/*.pdf) -o NetSec-All-Slides.pdf</b></span></div>
<div>
<br /></div>
<div>
Ер нь яг санасанаар нэгтгэж байна. Гарсан үр дүн нь энэ:</div>
<div>
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://4.bp.blogspot.com/-C4vj1oD1ZNE/WE-Vs6VJJaI/AAAAAAAABNk/zfrHle6deo8p9t2xsmJLq9qp1s97kz_ggCLcB/s1600/sejda-2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="640" src="https://4.bp.blogspot.com/-C4vj1oD1ZNE/WE-Vs6VJJaI/AAAAAAAABNk/zfrHle6deo8p9t2xsmJLq9qp1s97kz_ggCLcB/s640/sejda-2.png" width="526" /></a></div>
<div>
<br /></div>
<div>
Хичээлийн хуваарь болон шалгалтын асуултын тоймыг хамгийн эхэнд тавьж өгөөд, өнөө 37 слайдаа бүгдийг нь нэгтгээд авлаа. Нийт 2,536 хуудастай томоо PDF файл үүсч. Одоо ингээд хичээлийн бүх слайдаас нэг дор хайлт хийх, хүссэн хичээлийн, хүссэн сэдэв рүү хулганы нэг товшилтоор очих боломжтой болов. 4 хоногийн дараах шалгалтаас өмнө лав бүх слайдаа хэд гурав гүйлгээд харчих нь ээ. Болоо ш дэ :)</div>
<div>
<br /></div>
<div>
Өөр бас нэг анзаарсан зүйл нь хэрэв тусдаа байгаа PDF файлуудаа эвтэйхэн паттернтай нэрлэчихвэл нь паттерн тус бүрээр PDF файл үүсгэж болох нь. Жишээ нь энэ хичээлийн слайдууд дараах үндсэн гурван төрлийн слайдуудаас бүрдэж байгаа: 1) <a href="https://www.amazon.com/Corporate-Computer-Security-Randy-Boyle/dp/0133545199/ref=sr_1_1?ie=UTF8&qid=1481611247&sr=8-1&keywords=corporate+computer+security">Corporate Computer Security</a> ном; 2) <a href="http://www.cert.org/">CERT</a>-ийн слайд; 3) <a href="http://www.cisco.com/">Cisco</a>-н слайд.</div>
<div>
<br /></div>
<div>
Corporate Computer Security номын слайдын нэр '-bk' тэмдэгт агуулж байгаа тул доорх коммандаар зөвхөн энэ номын слайдуудыг нэгтгэж болох нь:</div>
<div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">sejda-console merge -b one_entry_each_doc -f $(ls netsec/*-bk*.pdf) -o CorpCompSecBook.pdf</span></div>
<div>
<br /></div>
<div>
CERT-н слайдын нэр '-cert' тэмдэгт агуулж байгаа тул доорх коммандаар зөвхөн CERT-н слайдыг нэгтгэж болох нь:</div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">sejda-console merge -b one_entry_each_doc -f $(ls netsec/*-cert*.pdf) -o CERT-Slides.pdf</span></div>
</div>
<div>
<br /></div>
<div>
Cisco-н слайдууд 'Cisco' тэмдэгт агуулж байгаа тул доорх коммандаар зөвхөн Cisco-н слайдуудыг нэгтгэж болох нь:</div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">sejda-console merge -b one_entry_each_doc -f $(ls netsec/*Cisco*.pdf) -o Cisco-Slides.pdf</span></div>
<div>
<br /></div>
<div>
Эцэст нь, ингэхэд энэ нөхөр ямар файлуудыг нэгтгэчихэв гэж та гайхаж байж магад. Хариу нь энэ:</div>
<div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">[bsanchin@bsanchin-linux netsec]$ ls -1 | while read f; do du -h $f; done | awk '{print $2, $1}' | column -t</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W00-1-Syllabus.pdf 384K</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W00-2-Final_Exam_Study_Topics.pdf 288K</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W01-bk1-The_Threat_Environment.pdf 7.2M</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W01-bk2-Planning_and_Policy.pdf 9.5M</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W01-cert-Governance.pdf 1.1M</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W01-cert-Risk_Management.pdf 1.2M</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W02-Ch01-Cisco-Introduction_to_Switched_Networks.pdf 464K</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W02-Ch02-Cisco-Introduction_to_Switched_Networks.pdf 1.3M</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W02-Ch03-Cisco-WLANs.pdf 896K</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W02-Ch04-Routing_Concepts.pdf 1.7M</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W03-cert-Demystifying_IPv6.pdf 3.2M</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W03-IP_Fundamentals-CCNA1v3.1_Mod09.pdf 1016K</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W03-The_OSI_Model_and_Security.pdf 896K</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W04-bk-Security_Networks.pdf 9.3M</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W04-cert-LAN_security_using_switch_featuresv2.pdf 1.8M</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W04-Suppl1-Securing_the_LAN.pdf 5.2M</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W04-Target_Breach.pdf 5.2M</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W05-cert-Network_Security-Wireless.pdf 1.1M</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W05-Merging_LANs,_WLANS,_and_controller-based_Wireless_Networks.pdf 2.8M</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W06-bk-Access_Control.pdf 12M</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W06-cert-Network_Access_Security.pdf 1.7M</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W06-Password_Recovery_Procedure_for_the_2600_Router.pdf 20K</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W07-bk-Firewalls.pdf 12M</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W07-cert-Network_Security_Enterprise_Tools.pdf 2.1M</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W08-bk-Host_Hardening.pdf 9.1M</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W08-cert-Network_Security_Host_Hardening.pdf 688K</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W09-bk-Data_Protection.pdf 8.0M</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W09-cert-Mobile_Device_Security.pdf 4.4M</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W09-cert-Threats_to_Mobile_Device.pdf 2.4M</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W09-Implementing_VPN_-_Cisco-CCNA.pdf 4.5M</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W10-cert-Insider_Threat.pdf 3.2M</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W11-bk-Application_Security.pdf 6.0M</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W11-Common_Developer_Crypto_Mistakes.pdf 372K</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W12-bk-Data_Protection.pdf 7.4M</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W13-bk-Incident_and_Disaster_Response.pdf 8.6M</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W13-cert-IncidentHandlingResponse.pdf 1.9M</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W14-cert-Cloud_Computing_Security.pdf 2.2M</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W15-MS-cert1-Mobile_Threats.pdf 2.4M</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">W15-MS-cert2-Mobile_Device_Security.pdf 4.4M</span></div>
<div>
<span style="color: blue; font-family: "courier new" , "courier" , monospace;">[bsanchin@bsanchin-linux netsec]$ </span></div>
</div>
<div>
<br /></div>
<div>
Яг энэ постыг уншаад сууж байгаа эрхэм та оюутан бол шалгалтад тань өндөр амжилтыг хүсье!<br />
<br /></div>
Benhttp://www.blogger.com/profile/08655978186125674870noreply@blogger.com0tag:blogger.com,1999:blog-6338514896997607727.post-58632791448266385792016-11-21T02:06:00.000+08:002016-11-21T02:06:24.619+08:00How to learn entire 4-year MIT curriculum for computer science, without taking any classes just in 12 months? Scott H. Young's MIT Challenge is definitely worth to review. See here for more information: <a href="https://www.scotthyoung.com/blog/myprojects/mit-challenge-2/">https://www.scotthyoung.com/blog/myprojects/mit-challenge-2/</a><br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://2.bp.blogspot.com/-Bj8raCXq4M0/WDHlIGcyJUI/AAAAAAAABLE/-KZ2-h_cy1AhRED7MdpfI-9jYeGW9FJIQCLcB/s1600/mit-challenge.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://2.bp.blogspot.com/-Bj8raCXq4M0/WDHlIGcyJUI/AAAAAAAABLE/-KZ2-h_cy1AhRED7MdpfI-9jYeGW9FJIQCLcB/s1600/mit-challenge.png" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
Picture source: https://www.scotthyoung.com/blog/myprojects/mit-challenge-2/</div>
<br />Benhttp://www.blogger.com/profile/08655978186125674870noreply@blogger.com0tag:blogger.com,1999:blog-6338514896997607727.post-77810088997113357512016-11-20T11:28:00.002+08:002016-11-21T01:19:30.448+08:00The Art of the Finish: How to Go From Busy to AccomplishedДээрх гарчигтай, нэг ийм сонирхолтой блог пост олж уншив. Доорх хэдэн өгүүлбэр аргагүй анхаарал татах ажээ:<br />
<br />
From my experience, the most common trait you will consistently observe in accomplished people is an obsession with completion. Once a project falls into their horizon, they crave, almost compulsively, to finish it. If they’re organized, this might happen in scheduled chunks. If they’re not “like many” this might happen in all-nighters. But they get it done. Fast and consistently.<br />
<br />
It’s this constant stream of finishing that begins, over time, to unlock more and more interesting opportunities and eventually leads to their big scores.<br />
<br />
If you are productive without harboring this intense desire for completion, you will end up just being busy. We all know the feeling. You work all day off of your to-do list. Everything is organized. Everything is scheduled. Yet, still, months pass with no important projects getting accomplished.<br />
<br />
Эх сурвалж / Source:<br />
<i>Cal Newport</i>, <a href="https://www.scotthyoung.com/blog/2007/10/18/the-art-of-the-finish-how-to-go-from-busy-to-accomplished/">The Art of the Finish: How to Go From Busy to Accomplished</a>, 2007, <a href="https://www.scotthyoung.com/">https://www.scotthyoung.com</a>Benhttp://www.blogger.com/profile/08655978186125674870noreply@blogger.com0tag:blogger.com,1999:blog-6338514896997607727.post-2235318838963718072016-11-15T08:39:00.000+08:002016-11-15T08:39:11.060+08:00Becoming an Expert: The Elements of Success<a href="https://www.farnamstreetblog.com/">FarnamStreet</a>-ийн нийтлэлүүдийг би бээр боломж л гарвал уншиж байдаг юм. Бүтээмжээ хэрхэн өргөх вэ?, хэрхэн цэгцтэй, далайцтай бодож сэтгэх вэ?, хэрхэн төвлөрөх вэ? гэх мэтчилэн асуултуудад хариу олохоор байнга эрэлхийлдэг нь энэ блогийн нэг гойд онцлог. Өнөөдөр '<a href="https://www.farnamstreetblog.com/2016/11/science-of-success/">Becoming an Expert: The Elements of Success</a>' нэртэй нийтлэл хэвлэгдсэн нь бүтээмжийн талаар сүүлийн 10 жилд гарсан бүх сайн номын санааг базаад тавьсан мэт сэтгэгдлийг төрүүлэв. <a href="http://www.barbaraoakley.com/">Барбара Өөкл</a>ийн <a href="https://www.amazon.com/Mind-Numbers-Science-Flunked-Algebra/dp/039916524X/ref=sr_1_1?ie=UTF8&qid=1479170161&sr=8-1&keywords=mind+for+numbers">номон</a> дээр chunking гэсэн ойлголтын талаар тайлбарладаг. Бүхэл бүтэн номыг нь уншсан хэрнээ, дөнгөж сая л учрыг нь ухаж ойлгов, би. Сонин юм шүү. За юутай ч, эргээд дахин дахин уншина, холбоосоор байгаа бүх номыг нь олж уншина гэж төлөвлөөд, '<a href="https://www.farnamstreetblog.com/2016/11/science-of-success/">Becoming an Expert: The Elements of Success</a>' нийтлэлийн холбоосыг энд аваад ирье.Benhttp://www.blogger.com/profile/08655978186125674870noreply@blogger.com0tag:blogger.com,1999:blog-6338514896997607727.post-39118218323603916722016-11-14T06:57:00.005+08:002016-11-14T06:57:53.677+08:00Three MonthsThe seeds of major software disasters are usually sown in the first three months of commencing the software project. Hasty scheduling, irrational commitments, unprofessional estimating techniques, and carelessness of the project management function are the factors that tend to introduce terminal problems. Once a project blindly lurches forward toward an impossible delivery date, the rest of the disaster will occur almost inevitably.<br />
<br />
<div style="text-align: right;">
T. Capers Jones, 1988 Page 120</div>
<br />
Одоо үзэж байгаа хичээлийн слайд дунд энэ ишлэл байх аж. Яг ямар номны 120 дахь хуудас болохыг нь гүүглдээд, 3 минутын дотор олж амжсангүй. Юутай ч, үнэний хувьтай санагдсан тул энд аваад ирлээ.Benhttp://www.blogger.com/profile/08655978186125674870noreply@blogger.com0tag:blogger.com,1999:blog-6338514896997607727.post-5674461679849297462016-11-07T03:13:00.001+08:002016-11-07T03:19:09.471+08:00Predicting PregnancyThe first part is easy. Target has a baby shower registry in which pregnant women register for baby gifts in advance of the birth of their children. These women are already Target shoppers, and they’ve effectively told the store that they are pregnant. But here is the statistical twist: Target figured out that other women who demonstrate the same shopping patterns are probably pregnant, too. For example, pregnant women often switch to unscented lotions. They begin to buy vitamin supplements. They start buying extra big bags of cotton balls. The Target predictive analytics gurus identified twenty five products that together made possible a “pregnancy prediction score.” The whole point of this analysis was to send pregnant women pregnancy related coupons in hopes of hooking them as long term Target shoppers.<br />
<br />
How good was the model? The New York Times Magazine reported a story about a man from Minneapolis who walked into a Target store and demanded to see a manager. The man was irate that his high school daughter was being bombarded with pregnancy related coupons from Target. “She’s still in high school and you’re sending her coupons for baby clothes and cribs? Are you trying to encourage her to get pregnant?” the man asked. The store manager apologized profusely. He even called the father several days later to apologize again. Only this time, the man was less irate; it was his turn to be apologetic. “It turns out there’s been some activities in my house I haven’t been completely aware of,” the father said. “She’s due in August.” The Target statisticians had figured out that his daughter was pregnant before he did. That is their business . . . and also not their business.<br />
<br />
Charles Wheelan, <i><a href="https://www.amazon.com/Naked-Statistics-Stripping-Dread-Data/dp/039334777X/ref=sr_1_1?ie=UTF8&qid=1478458940&sr=8-1&keywords=the+naked+statistics">Naked Statistics: Stripping the Dread from the Data</a></i> (Kindle Location 4250), 2014, W. W. Norton & CompanyBenhttp://www.blogger.com/profile/08655978186125674870noreply@blogger.com0tag:blogger.com,1999:blog-6338514896997607727.post-74265735000591134032016-11-07T03:04:00.003+08:002016-11-07T03:13:12.330+08:00Sell the stock, when....As a curious side note, researchers have also documented a Businessweek phenomenon. When CEOs receive high profile awards, including being named one of Businessweek’s “Best Managers,” their companies subsequently underperform over the next three years as measured by both accounting profits and stock price. However, unlike the Sports Illustrated effect, this effect appears to be more than reversion to the mean. According to Ulrike Malmendier and Geoffrey Tate, economists at the University of California at Berkeley and UCLA, respectively, when CEOs achieve “superstar” status, they get distracted by their new prominence. They write their memoirs. They are invited to sit on outside boards. They begin searching for trophy spouses. (The authors propose only the first two explanations, but I find the last one plausible as well.) Malmendier and Tate write, “Our results suggest that media induced superstar culture leads to behavioral distortions beyond mere mean reversion.” In other words, when a CEO appears on the cover of Businessweek, sell the stock.<br />
<br />
Charles Wheelan, <i><a href="https://www.amazon.com/Naked-Statistics-Stripping-Dread-Data/dp/039334777X/ref=sr_1_1?ie=UTF8&qid=1478458940&sr=8-1&keywords=the+naked+statistics">Naked Statistics: Stripping the Dread from the Data</a></i> (Kindle Location 1872), 2014, W. W. Norton & CompanyBenhttp://www.blogger.com/profile/08655978186125674870noreply@blogger.com0tag:blogger.com,1999:blog-6338514896997607727.post-38928280059648754812016-11-05T09:26:00.000+08:002016-11-05T09:46:22.704+08:00The Richest Man in Babylon<div style="text-align: center;">
Lo, money is plentiful </div>
<div style="text-align: center;">
for those who understand</div>
<div style="text-align: center;">
the simple rules of its acquisition</div>
<div style="text-align: center;">
<br /></div>
<div style="text-align: center;">
1. Start thy purse fattening</div>
<div style="text-align: center;">
2. Control thy expenditures</div>
<div style="text-align: center;">
3. Make gold multiply</div>
<div style="text-align: center;">
4. Guard thy treasures from loss</div>
<div style="text-align: center;">
5. Make of thy dwelling a profitable investment</div>
<div style="text-align: center;">
6. Insure a future income</div>
<div style="text-align: center;">
7. Increase thy ability to earn</div>
<br />
<div style="text-align: center;">
. . .</div>
<br />
Work, thou see, by this, in the time of my greatest distress, didst prove to be my best friend. My willingness to
work enabled me to escape from being sold to join the slave gangs upon the walls. It is also impressed thy grandfather, he selected me for his partner.<br />
<br />
George S. Clason, <i><a href="https://www.amazon.com/Richest-Man-Babylon-George-Clason/dp/1897384343/ref=sr_1_2?ie=UTF8&qid=1478309068&sr=8-2&keywords=the+richest+man+in+babylon">The Richest Man in Babylon</a> (pp. 4, 125)</i>, 1926, Magdalane Press (2015 Edition)Benhttp://www.blogger.com/profile/08655978186125674870noreply@blogger.com0tag:blogger.com,1999:blog-6338514896997607727.post-75813703067715879862016-10-28T12:50:00.000+08:002016-10-28T12:50:02.182+08:00Just a containerPearl #12: When loved ones pass away, you've just lost the containers they lived in, not the essence of the impact they had on family, friends, and community and not the memories you still hold dear.<br />
. . .<br />
Zeke's oldest son delivered a superb eulogy at the funeral. It was heartfelt, loving, contemplative, and funny. He succinctly captured the essence of Zeke's personality and his influence on the people around him. We could all laugh while we cried, remembering the happiness Zeke brought instead of our sadness at his passing. That was Zeke. Not the container, but the memories. I hope I'm able to leave such fond memories when I no longer need the container I walk around in.<br />
<br />
Karl Wiegers, <i><a href="https://www.amazon.com/Pearls-Sand-Encounters-Powerful-Lessons/dp/1600379990/ref=sr_1_1?ie=UTF8&qid=1477630127&sr=8-1&keywords=pearls+from+sand">Pearls from Sand: How Small Encounters Lead to Powerful Lessons</a> (pp. 59, 61)</i>, 2011, Morgan James PublishingBenhttp://www.blogger.com/profile/08655978186125674870noreply@blogger.com0tag:blogger.com,1999:blog-6338514896997607727.post-61188236541468007422016-10-26T10:31:00.002+08:002016-10-27T09:54:02.128+08:00Vision<div style="text-align: center;">
<span style="color: #990000; font-size: large;">Vision without Action is a Daydream. </span></div>
<div style="text-align: center;">
<span style="color: #666666; font-size: large;">Action without Vision is a Nightmare.</span></div>
<br />
<div style="text-align: right;">
<i>Japanese proverb.</i></div>
Benhttp://www.blogger.com/profile/08655978186125674870noreply@blogger.com0tag:blogger.com,1999:blog-6338514896997607727.post-85947631574215784342016-10-22T10:08:00.001+08:002016-10-22T10:08:15.182+08:00IoT: Safety & SecurityLike the thermodynamics example we provided above, cyber-physical and many IoT systems frequently invoke an intersection of safety and security engineering, two disciplines that have developed on very different evolutionary paths but which possess partially overlapping goals. We will delve more into safety aspects of IoT security engineering later in this volume, but for now we point out an elegantly expressed distinction between safety and security provided by noted academic Dr. Barry Boehm, Axelrod, W. C., Engineering Safe and Secure Software Systems, p.61, Massachussetts, Artech House, 2013. He poignantly but beautifully expressed the relationship as follows:<br />
<br />
<ul>
<li><b>Safety</b>: The system must not harm the world</li>
<li><b>Security</b>: The world must not harm the system</li>
</ul>
<br />
Thus it is clear that the IoT and IoT security are much more complex than traditional networks, hosts and cybersecurity. Safety-conscious industries such as aircraft manufacturers, regulators, and researchers have evolved highly effective safety engineering approaches and standards because aircraft can harm the world, and the people in it. The aircraft industry today, like the automotive industry, is now playing catch-up with regard to security due to the accelerating growth of network connectivity to their vehicles.<br />
<br />
Brian Russell, Drew Van Duren, <i><a href="https://www.amazon.com/Practical-Internet-Things-Security-Russell/dp/178588963X/ref=sr_1_1?ie=UTF8&qid=1477101959&sr=8-1&keywords=practical+internet+of+things+security">Practical Internet of Things Security</a></i>, 2016, Packt PublishingBenhttp://www.blogger.com/profile/08655978186125674870noreply@blogger.com0tag:blogger.com,1999:blog-6338514896997607727.post-15158085437600918722016-10-21T12:01:00.001+08:002016-10-21T12:01:38.411+08:00The Same Password...People often use the same password at multiple sites. For instance, a 2005 study by Cyota found that 44 percent of people surveyed used the same password at multiple sites, and 37 percent of online banking customers used the same password at less secure sites. When passwords are used at multiple sites, if a password is compromised at one site, it is compromised at all sites. In fact, attackers sometimes invite someone to an attractive site and let them pick their own username and password. The attackers then try that username and password at other sites the victim is likely to use.<br />
<br />
Randall J. B., Raymond R. P., <i><a href="https://www.amazon.com/Corporate-Computer-Security-Randy-Boyle/dp/0133545199/ref=sr_1_1?ie=UTF8&qid=1477022231&sr=8-1&keywords=corporate+computer+security">Corporate Computer Security</a> (pp. 252)</i>, 2015, PearsonBenhttp://www.blogger.com/profile/08655978186125674870noreply@blogger.com0tag:blogger.com,1999:blog-6338514896997607727.post-11496463917577863042016-10-02T00:21:00.002+08:002016-10-02T00:27:00.060+08:00Ouch, Waterfall!Another relevant research result answers this question: When waterfall requirements analysis is attempted, how many of the prematurely early specified features are actually useful in the final software product? In a study [Johnson02] of thousands of projects, the results are quite revealing—45% of such features were never used, and an additional 19% were “rarely” used. See Figure 5.1. Almost 65% of the waterfall-specified features were of little or no value!<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://3.bp.blogspot.com/-aw88CLuTcwY/V-_how9kApI/AAAAAAAABEw/zs3827rtKbg_wphRtNxQzpf4By39-uv_QCLcB/s1600/Waterfall.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://3.bp.blogspot.com/-aw88CLuTcwY/V-_how9kApI/AAAAAAAABEw/zs3827rtKbg_wphRtNxQzpf4By39-uv_QCLcB/s1600/Waterfall.png" /></a></div>
<br />
Craig Larman, <i><a href="https://www.amazon.com/Applying-UML-Patterns-Introduction-Object-Oriented/dp/0131489062/ref=sr_1_1?s=books&ie=UTF8&qid=1475338689&sr=1-1&keywords=applying+uml+and+patterns">Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development</a></i> (pp. 45), October 30, 2004, Prentice HallBenhttp://www.blogger.com/profile/08655978186125674870noreply@blogger.com0tag:blogger.com,1999:blog-6338514896997607727.post-32333158978255207082016-09-24T11:44:00.002+08:002016-09-24T11:44:19.479+08:00CMU graduate Mary Shaw (CS'72) receives National Medal of Technology at White House ceremony<div class="separator" style="clear: both; text-align: center;">
<iframe width="320" height="266" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/y10cB0iRxfo/0.jpg" src="https://www.youtube.com/embed/y10cB0iRxfo?feature=player_embedded" frameborder="0" allowfullscreen></iframe></div>
<br />Benhttp://www.blogger.com/profile/08655978186125674870noreply@blogger.com1tag:blogger.com,1999:blog-6338514896997607727.post-72787073208993720592016-09-15T12:36:00.002+09:002016-09-15T12:42:45.882+09:00Information RadiatorAn information radiator displays information in a place where passersby can see it. With information radiators, the passersby don’t need to ask questions; the information simply hits them as they pass.<br />
<div style="text-align: right;">
Alistair Cockburn</div>
<div style="text-align: right;">
<br />
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://2.bp.blogspot.com/-zc-oO9Loju4/V9oWluSgo0I/AAAAAAAABDw/koSG7ShR7WUIE6XuBuMURPB3DSwLepJDQCLcB/s1600/Information%2Bradiator.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://2.bp.blogspot.com/-zc-oO9Loju4/V9oWluSgo0I/AAAAAAAABDw/koSG7ShR7WUIE6XuBuMURPB3DSwLepJDQCLcB/s1600/Information%2Bradiator.png" /></a></div>
<div style="text-align: center;">
<i>A picture from '<a href="https://www.amazon.com/Kanban-Action-Marcus-Hammarberg/dp/1617291056/ref=sr_1_1?s=books&ie=UTF8&qid=1473910510&sr=1-1&keywords=kanban+in+action">Kanban in Action</a>' .</i></div>
<div style="text-align: center;">
<i>Book authors: Marcus Hammarberg and Joakim Sunden.</i></div>
Benhttp://www.blogger.com/profile/08655978186125674870noreply@blogger.com0tag:blogger.com,1999:blog-6338514896997607727.post-68064643783126552872016-09-10T00:10:00.002+09:002016-09-10T00:10:49.474+09:00Frederick Brooks on Requirements DevelopmentThe hardest single part of building a software system is deciding precisely what to build. No other part of the conceptual work is as difficult as establishing the detailed technical requirements, including all the interfaces to people, to machines, and to other software systems. No other part of the work so cripples the resulting system if done wrong. No other part is more difficult to rectify later.<br />
<br />
Frederick P. Brooks, Jr., <i><a href="http://faculty.salisbury.edu/~xswang/Research/Papers/SERelated/no-silver-bullet.pdf">No Silver Bullet: Essence and Accidents of Software Engineering</a> (pp. 13)</i>, 1987, University of North Carolina at Chapel HillBenhttp://www.blogger.com/profile/08655978186125674870noreply@blogger.com0tag:blogger.com,1999:blog-6338514896997607727.post-1875933984679041692016-09-05T11:43:00.000+09:002016-09-05T11:46:57.362+09:00If you’re not failing, you’re probably not trying as hard as you could be<div style="font-family: Georgia, serif; font-size: 16px; line-height: 1.5em; margin-bottom: 20px; padding: 0px;">
All the failures I’ve overcome? That’s much more important than any successes. I had to repeat ninth grade. I had to repeat the beginning of graduate school. I lost my major source of funding just before I came up for tenure. One of the major things — news flash — that they judge you on for tenure is whether you can support yourself. In each case, it helps if you can think out of the box and think of a new way of doing things. The other thing is: Follow your dreams, even if it does mean taking a risk. If you’re not failing, you’re probably not trying as hard as you could be. And being petrified of failure means you’re going to be probably a very extreme underachiever.</div>
<div style="font-family: Georgia, serif; font-size: 16px; line-height: 1.5em; margin-bottom: 20px; padding: 0px;">
One of the things we recruit people for in my lab is being nice. That’s the ethos we try to encourage. “Nice guys finish last” — isn’t that a terrible message to be sending to the next generation?</div>
<div style="font-family: Georgia, serif; font-size: 16px; line-height: 1.5em; margin-bottom: 20px; padding: 0px;">
I think what goes around comes around. You have to really want all the teams to succeed, all the boats to float. You want your competitors to not fail. It’s hard enough to get progress in the world if everybody’s succeeding.</div>
<div style="font-family: Georgia, serif; font-size: 16px; line-height: 1.5em; margin-bottom: 20px; padding: 0px; text-align: center;">
. . . </div>
<div style="line-height: 1.5em; margin-bottom: 20px; padding: 0px;">
<span style="font-family: "georgia" , serif;"><i>From Alvin Powell's interview with <a href="http://arep.med.harvard.edu/gmc/">George Church</a> (Professor of Genetics at Harvard Medical School).</i></span></div>
<div style="line-height: 1.5em; margin-bottom: 20px; padding: 0px;">
<i><span style="font-family: "georgia" , serif;">Source: </span><span style="font-family: "georgia" , serif;"><a href="http://news.harvard.edu/gazette/story/2016/05/if-youre-not-failing-youre-probably-not-trying-as-hard-as-you-could-be/">http://news.harvard.edu/gazette/story/2016/05/if-youre-not-failing-youre-probably-not-trying-as-hard-as-you-could-be/</a></span></i></div>
Benhttp://www.blogger.com/profile/08655978186125674870noreply@blogger.com0tag:blogger.com,1999:blog-6338514896997607727.post-29529401730312292632016-07-18T18:30:00.001+09:002016-07-18T20:38:10.174+09:00Luxurious & Arctic!What signals success when you walk into an office in parts of Asia? Ridiculously cold temperatures. The blast of frigid air tells you immediately that this firm can afford lots of air-conditioning. Even when the temperature is more than ninety degrees outside, office temperatures are sometimes so cold that some workers use space heaters. The Wall Street Journal reports, “Frosty air conditioning is a way for businesses and building owners to show that they're ahead of the curve on comfort. In ostentatious Asian cities, bosses like to send out the message: We are so luxurious, we're arctic.”<br />
<br />
Charles Wheelan, Naked Economics: Undressing the Dismal Science (pp. 121), 2010, W. W. Norton & Company<br />
<div>
<br /></div>
Benhttp://www.blogger.com/profile/08655978186125674870noreply@blogger.com0tag:blogger.com,1999:blog-6338514896997607727.post-5834568707281875042016-04-17T12:44:00.004+09:002016-04-17T12:45:52.999+09:00ZipcodeThe United States Postal Service, which assigns zip codes, has issued about 45,000 of the 99,999 possible zip code values. Some zip codes, however, have no residents, such as a code assigned to a single large office building. The United States Census Bureau compiles statistics on nearly 32,000 regions it calls Zip Code Tabulation Areas, distinct areas approximating the boundary of a geographic postal zip code. With a total U.S. population of over 300 million, each tabulation area thus contains an average of roughly 10,000 people.<br />
<br />
Charles, P. P., Shari L. P., Jonathan M. (2015). <i>Security in Computing: Fifth Edition (pp. 615)</i>. Prentice Hall. Upper Saddle River, NJBenhttp://www.blogger.com/profile/08655978186125674870noreply@blogger.com0