<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>

<channel>
	<title>Software Generalist</title>
	<atom:link href="http://www.softwaregeneralist.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.softwaregeneralist.com</link>
	<description>All you need to know to become a successful software engineer</description>
	<pubDate>Tue, 06 Jan 2009 17:24:43 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5</generator>
	<language>en</language>
			<item>
		<title>On Babbage-Chambers Paradox</title>
		<link>http://www.softwaregeneralist.com/2009/01/06/on-babbage-chambers-paradox/</link>
		<comments>http://www.softwaregeneralist.com/2009/01/06/on-babbage-chambers-paradox/#comments</comments>
		<pubDate>Tue, 06 Jan 2009 17:01:16 +0000</pubDate>
		<dc:creator>Dmitry Vostokov</dc:creator>
		
		<category><![CDATA[Reading Notebook]]></category>

		<category><![CDATA[Software and Philosophy]]></category>

		<guid isPermaLink="false">http://www.softwaregeneralist.com/?p=17</guid>
		<description><![CDATA[The same process suddenly reveals a different law (*). Although in the preceding definition the notion of a process should be taken generally, in the software world it often happens when a running process or an operating system suddenly exhibits all sorts of strange, sudden and unexplainable behaviour after some time or when running in a different [...]]]></description>
			<content:encoded><![CDATA[<p>The same process suddenly reveals a different law (*). Although in the preceding definition the notion of a process should be taken generally, in the software world it often happens when a running process or an operating system suddenly exhibits all sorts of strange, sudden and unexplainable behaviour after some time or when running in a different environment. Here we can consider an environment as a sort of law under which a process operates (Chambers) or a process output and interaction as a law (Babbage). As a consequence of this we can never know whether our program crashes or hangs in the future.</p>
<p><span style="font-size: xx-small;">(*) The Oxford Companion to Philosophy, 2nd edition, p. 76</span></p>
<p>- Dmitry Vostokov @ <a href="http://www.softwaregeneralist.com/">SoftwareGeneralist.com</a> -</p>
]]></content:encoded>
			<wfw:commentRss>http://www.softwaregeneralist.com/2009/01/06/on-babbage-chambers-paradox/feed/</wfw:commentRss>
		</item>
		<item>
		<title>On Abandonment</title>
		<link>http://www.softwaregeneralist.com/2009/01/06/on-abandonment/</link>
		<comments>http://www.softwaregeneralist.com/2009/01/06/on-abandonment/#comments</comments>
		<pubDate>Tue, 06 Jan 2009 16:20:03 +0000</pubDate>
		<dc:creator>Dmitry Vostokov</dc:creator>
		
		<category><![CDATA[Reading Notebook]]></category>

		<category><![CDATA[Software and Philosophy]]></category>

		<guid isPermaLink="false">http://www.softwaregeneralist.com/?p=16</guid>
		<description><![CDATA[In philosophy this term means the absence of sources of external ethical authority (*). In software when something is abandoned it has lost control or its referent lost the last reference to it, for example, abandoned threads, processes or data blocks. The latter usually known as heap or pool leaks. File abandonment is frequently the [...]]]></description>
			<content:encoded><![CDATA[<p>In philosophy this term means the absence of sources of external ethical authority (*). In software when something is abandoned it has lost control or its referent lost the last reference to it, for example, abandoned threads, processes or data blocks. The latter usually known as heap or pool leaks. File abandonment is frequently the source of user frustrations when they are not able to find why there is not enough space. When we find something that doesn&#8217;t have external referents we know that the object has been abandoned. Thus we understand that we cannot say that an object is abandoned when looking at it from outside the containing system, we must look within that system, similar to an existantialist threatment of the concept of abandonment when someone must reflect to find an ethical authority and values.</p>
<p><span style="font-size: xx-small;">(*) The Oxford Companion to Philosophy, 2nd edition, p. 1</span></p>
<p>- Dmitry Vostokov @ <a href="http://www.softwaregeneralist.com/">SoftwareGeneralist.com</a> -</p>
]]></content:encoded>
			<wfw:commentRss>http://www.softwaregeneralist.com/2009/01/06/on-abandonment/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Reading Notebook: 06-Jan-09</title>
		<link>http://www.softwaregeneralist.com/2009/01/06/reading-notebook-06-jan-09/</link>
		<comments>http://www.softwaregeneralist.com/2009/01/06/reading-notebook-06-jan-09/#comments</comments>
		<pubDate>Tue, 06 Jan 2009 15:25:18 +0000</pubDate>
		<dc:creator>Dmitry Vostokov</dc:creator>
		
		<category><![CDATA[Notes on Concurrent Programming on Windows]]></category>

		<category><![CDATA[Notes on Developers Guide to Debugging]]></category>

		<category><![CDATA[Reading Notebook]]></category>

		<guid isPermaLink="false">http://www.softwaregeneralist.com/?p=15</guid>
		<description><![CDATA[Comments in italics are mine and express my own views, thoughts and opinions
Developer&#8217;s Guide to Debugging by M. Wloka, et al.:
Test-driving debugging tools (p. 14) - I&#8217;ve seen many times indeed when engineers advised on the phone to collect information using certain tools but didn&#8217;t try those tools themselves&#8230;
Golden output (p. 16) - an output [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: left;"><em>Comments in italics are mine and express my own views, thoughts and opinions</em></p>
<p><strong>Developer&#8217;s Guide to Debugging by M. Wloka, et al.:</strong></p>
<p>Test-driving debugging tools (p. 14) - <em>I&#8217;ve seen many times indeed when engineers advised on the phone to collect information using certain tools but didn&#8217;t try those tools themselves&#8230;</em></p>
<p>Golden output (p. 16) - an output to compare to, reference output</p>
<p>The notion of common bugs that are easily and readily reproducible with test cases (p. 18)</p>
<p>Idealist heisenbug (p. 19) - a bug stemming from invalid optimization code</p>
<p>Secret bugs (p. 20) - <em>I&#8217;ve seen that many times when customers do not send crash dumps due to security reasons. If this is because they cannot inspect binary contents for potential information leaks I devised a way to instruct a debugger to output textual log files with information relevant for at least problem identification.</em> </p>
<p><strong>Concurrent Programming on Windows by J. Duffy</strong>:</p>
<p>Handcrafted semi transactional system, importance of state in-the-small and shared memory dependance (p. 13) </p>
<p>State management: isolation | immutability | synchronization (p. 14)  </p>
<p>Control vs. data synchronization (p. 14)</p>
<p>What is a state? (p. 15) <em>- I define a state as an memory snapshot at a given time where memory is taken in a broad sense including processor(s) state as well</em></p>
<p>The transitive nature of state sharing, data privatization and publication (p. 15) <em>- From Windows kernel perspective everything is shared </em></p>
<p>A reference to escape analysis techniques and ownership types (p. 19)</p>
<p>Critical region as a simulation of atomic r/w not possible in hardware (p. 21)</p>
<p>- Dmitry Vostokov @ <a href="http://www.softwaregeneralist.com/">SoftwareGeneralist.com</a> -</p>
]]></content:encoded>
			<wfw:commentRss>http://www.softwaregeneralist.com/2009/01/06/reading-notebook-06-jan-09/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Reading Notebook: 05-Jan-09</title>
		<link>http://www.softwaregeneralist.com/2009/01/05/reading-notebook-05-jan-09/</link>
		<comments>http://www.softwaregeneralist.com/2009/01/05/reading-notebook-05-jan-09/#comments</comments>
		<pubDate>Mon, 05 Jan 2009 16:23:00 +0000</pubDate>
		<dc:creator>Dmitry Vostokov</dc:creator>
		
		<category><![CDATA[Notes on Concurrent Programming on Windows]]></category>

		<category><![CDATA[Notes on Developers Guide to Debugging]]></category>

		<category><![CDATA[Reading Notebook]]></category>

		<guid isPermaLink="false">http://www.softwaregeneralist.com/?p=14</guid>
		<description><![CDATA[Comments in italics are mine and express my own views, thoughts and opinions
Developer&#8217;s Guide to Debugging by M. Wloka, et al.:
The notion of debugging opportunities - the flow of opportunities to debug from earlier macro instrumentation using source code preprocessing techniques to run-time debugging tools (p. 6)
The notion of debugging breaking personal relationships (p. v, [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: left;"><em>Comments in italics are mine and express my own views, thoughts and opinions</em></p>
<p><strong>Developer&#8217;s Guide to Debugging by M. Wloka, et al.:</strong></p>
<p>The notion of debugging opportunities - the flow of opportunities to debug from earlier macro instrumentation using source code preprocessing techniques to run-time debugging tools (p. 6)</p>
<p>The notion of debugging breaking personal relationships (p. v, foreword by A. Zeller)</p>
<p>Solution-oriented way</p>
<p>13 rules extend 9 rules of Agans</p>
<p>Rule 3: Simplify the Test Case (p. 9) - <em>Very important in postmortem debugging when someone collects data for you</em></p>
<p>Rule 4: Read the Right Error Message (p. 9) - <em>Good rule for postmortem debugging too</em></p>
<p>Rule 6: Separate Facts from Interpretation (p. 10) - <em>Good one</em></p>
<p>Side-by-side debugging (pp. 11-12) - <em>very important in real life: ETW-based CDF traces from normal and problem scenarious</em></p>
<p>Rule 8: Match the Tool to the Bug (p. 12) - <em>psychology of debugging</em></p>
<p>Rule 10: Keep an Audit Trail (pp. 12-13) - <em>for example, logging in WinDbg</em></p>
<p><strong>Concurrent Programming on Windows by J. Duffy</strong>:</p>
<p>Why concurrency? (pp. 3-4) - <em>one reason is missed: to understand memory dumps, traces and logs better - the view from software technical support</em></p>
<p>Natural scalability: latent -&gt; actual concurrencly during the course of software evolution (p. 5). Some degree of inherent latent concurrencly in programming languages constrained by stylistic habits (p. 5)</p>
<p>&#8220;Concurrency begins with architecture.&#8221; (p. 6) - <em>merits a new quotation</em></p>
<p>Decomposition of programs into agents (roughly: entry points interacting asycnronously with envorinment), tasks and data (pp. 6-7)</p>
<p>Architecturing to ease the synchronization burden (p. 7)</p>
<p>Natural domain parallelism (pp. 8-9)</p>
<p>- Dmitry Vostokov @ <a href="http://www.softwaregeneralist.com/">SoftwareGeneralist.com</a> -</p>
]]></content:encoded>
			<wfw:commentRss>http://www.softwaregeneralist.com/2009/01/05/reading-notebook-05-jan-09/feed/</wfw:commentRss>
		</item>
		<item>
		<title>An Attempt to Revive this Blog</title>
		<link>http://www.softwaregeneralist.com/2009/01/05/an-attempt-to-revive-this-blog/</link>
		<comments>http://www.softwaregeneralist.com/2009/01/05/an-attempt-to-revive-this-blog/#comments</comments>
		<pubDate>Mon, 05 Jan 2009 15:01:29 +0000</pubDate>
		<dc:creator>Dmitry Vostokov</dc:creator>
		
		<category><![CDATA[Announcements]]></category>

		<category><![CDATA[Book Stack Dump]]></category>

		<category><![CDATA[Reading Notebook]]></category>

		<guid isPermaLink="false">http://www.softwaregeneralist.com/?p=13</guid>
		<description><![CDATA[I admit that this blog needs a revival. I haven&#8217;t been writing posts since September and my multi-reading techniques failed. It doesn&#8217;t mean that techniques are bad, it means that multi-reading needs a reader process and good scheduling. Therefore, in 2009 I change my reading techniques and introduce a reading notebook or journal on this blog. Ideally [...]]]></description>
			<content:encoded><![CDATA[<p>I admit that this blog needs a revival. I haven&#8217;t been writing posts since September and my multi-reading techniques failed. It doesn&#8217;t mean that techniques are bad, it means that multi-reading needs a reader process and good scheduling. Therefore, in 2009 I change my reading techniques and introduce a reading notebook or journal on this blog. Ideally the notebook will record the most important stuff that I learnt or paid attention to during the day or the previous day while reading software engineering books.</p>
<p>- Dmitry Vostokov @ <a href="http://www.softwaregeneralist.com/">SoftwareGeneralist.com</a> -</p>
]]></content:encoded>
			<wfw:commentRss>http://www.softwaregeneralist.com/2009/01/05/an-attempt-to-revive-this-blog/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Book Stack Dump, Day 5</title>
		<link>http://www.softwaregeneralist.com/2008/09/02/book-stack-dump-day-5/</link>
		<comments>http://www.softwaregeneralist.com/2008/09/02/book-stack-dump-day-5/#comments</comments>
		<pubDate>Tue, 02 Sep 2008 14:33:33 +0000</pubDate>
		<dc:creator>Dmitry Vostokov</dc:creator>
		
		<category><![CDATA[Book Stack Dump]]></category>

		<guid isPermaLink="false">http://www.softwaregeneralist.com/?p=12</guid>
		<description><![CDATA[Book abbreviations correspond to titles on the picture from this link:
Cooperative Multireading Revisited and Started
POSA2: Widespread use of non-OO algorithmic decomposition in network and concurrent systems.
POSA5: Evolution in modeling and design. Design illusion.
AMP: Mutual exclusion (both excluded) problem with deadlock-freedom (if both want, one eventually succeeds), starvation-freedom (lockout-freedom, one eventually succeeds) and waiting properties.
EIP: Patterns: [...]]]></description>
			<content:encoded><![CDATA[<h6 style="text-align: left;">Book abbreviations correspond to titles on the picture from this link:</h6>
<h6 style="text-align: left;"><a title="Permanent Link to Cooperative Multireading Revisited and Started" rel="bookmark" href="http://www.softwaregeneralist.com/2008/06/04/cooperative-multireading-revisited/">Cooperative Multireading Revisited and Started</a></h6>
<p style="text-align: left;"><strong>POSA2:</strong> Widespread use of non-OO algorithmic decomposition in network and concurrent systems.</p>
<p style="text-align: left;"><strong>POSA5:</strong> Evolution in modeling and design. Design illusion.</p>
<p style="text-align: left;"><strong>AMP:</strong> Mutual exclusion (both excluded) problem with deadlock-freedom (if both want, one eventually succeeds), starvation-freedom (lockout-freedom, one eventually succeeds) and waiting properties.</p>
<p style="text-align: left;"><strong>EIP:</strong> Patterns: validation of understanding, reference and common vocabulary. Pattern realization in specific environment. Pattern cohesiveness. </p>
<p style="text-align: left;"><strong>MM:</strong> Detaching threads in pthreads is similar to closing the last handle in Win32. In pthreads it is possible to create detached threads.</p>
<p style="text-align: left;"><strong>SC:</strong> Creativity: breaking traditional patterns. Dichotomy of two brain hemispheres.</p>
<p style="text-align: left;"><strong>ASS:</strong> ASAP is close to NOW. One-stop shopping.</p>
<p style="text-align: left;"><strong>SM:</strong> The necessity of impact analysis to determine potential ripple effects on existing environment/system.</p>
<p style="text-align: left;"><strong>CC:</strong> Software construction is central guaranteed activity. Source code is always up to date.</p>
<p style="text-align: left;"><strong>RP:</strong> Pedagogical patterns. Patterns: forces - tension - resolution by balancing forces with compromise - consequences</p>
<p style="text-align: left;"><strong>MES:</strong> A5/x algorithms to encrypt GSM communications</p>
<p style="text-align: left;"><strong>OOM:</strong> Fundamental split between OO databases and object-relational (OQL vs. SQL3).</p>
<p style="text-align: left;"><strong>TIS:</strong> Application- vs. System-provided recovery.</p>
<p style="text-align: left;"><strong>NAT:</strong> Addressing in OSI network layer 3 - networkId(flat|subnetted|hierarchical):hostId(flat)</p>
<p style="text-align: left;"><strong>PT:</strong> Generative grammar as fixed-size recipe for sentence construction. Platonic grammar as complete language description.</p>
<p style="text-align: left;"><strong>CW:</strong> E-mail and IM redirectors. Session hijacking.</p>
<p style="text-align: left;"><strong>PNA:</strong> Saltzer: application name -&gt; node address -&gt; point of attachment -&gt; route. DNS as hierarchical distributed DB to replace host table.</p>
<p style="text-align: left;"><strong>CA:</strong> Simple RISC non-pipelining implementation: IF (instruction fetch) -&gt; ID/RF (instruction decode/register fetch, fixed-field decoding) -&gt; EX/EA (execution/effective address) -&gt; MEM (memory access) -&gt; WB (write-back).</p>
<p style="text-align: left;"><strong>GC:</strong> Pointer reachability from computation roots. The set of live heap nodes as transitive referential closure. Accessible nodes subsume live set. Direct counting vs. tracing.</p>
<p style="text-align: left;"><strong>CS:</strong> Ripple-carry of full adders and carry-propagation delay in adder networks.</p>
<p style="text-align: left;">- Dmitry Vostokov @ <a href="http://www.softwaregeneralist.com/">SoftwareGeneralist.com</a> -</p>
]]></content:encoded>
			<wfw:commentRss>http://www.softwaregeneralist.com/2008/09/02/book-stack-dump-day-5/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Book Stack Dump, Day 4</title>
		<link>http://www.softwaregeneralist.com/2008/06/27/book-stack-dump-day-4/</link>
		<comments>http://www.softwaregeneralist.com/2008/06/27/book-stack-dump-day-4/#comments</comments>
		<pubDate>Fri, 27 Jun 2008 12:47:13 +0000</pubDate>
		<dc:creator>Dmitry Vostokov</dc:creator>
		
		<category><![CDATA[Book Stack Dump]]></category>

		<guid isPermaLink="false">http://www.softwaregeneralist.com/?p=11</guid>
		<description><![CDATA[Book abbreviations correspond to titles on the picture from this link:
Cooperative Multireading Revisited and Started
POSA2: Loose-coupling.
POSA5: Design as a sort of problem solving vs. seeing the beauty. Newness.
AMP: View of concurrent concurrency problems as physical. Coordination protocol and proof by contradiction.
EIP: Vendor-independent vocabulary.
MM: In Win32 when main() exits other threads exit too, in Java it [...]]]></description>
			<content:encoded><![CDATA[<h6 style="text-align: left;">Book abbreviations correspond to titles on the picture from this link:</h6>
<h6 style="text-align: left;"><a title="Permanent Link to Cooperative Multireading Revisited and Started" rel="bookmark" href="http://www.softwaregeneralist.com/2008/06/04/cooperative-multireading-revisited/">Cooperative Multireading Revisited and Started</a></h6>
<p style="text-align: left;"><strong>POSA2:</strong> Loose-coupling.</p>
<p style="text-align: left;"><strong>POSA5:</strong> Design as a sort of problem solving vs. seeing the beauty. Newness.</p>
<p style="text-align: left;"><strong>AMP:</strong> View of concurrent concurrency problems as physical. Coordination protocol and proof by contradiction.</p>
<p style="text-align: left;"><strong>EIP:</strong> Vendor-independent vocabulary.</p>
<p style="text-align: left;"><strong>MM:</strong> In Win32 when main() exits other threads exit too, in Java it is not.</p>
<p style="text-align: left;"><strong>SC:</strong> Fundamental conflict between management and practitioners: discipline/control vs. freewheeling methods.</p>
<p style="text-align: left;"><strong>ASS:</strong> Support as a profit center.</p>
<p style="text-align: left;"><strong>SM:</strong> The definition of software includes all artifacts.</p>
<p style="text-align: left;"><strong>CC:</strong> Software construction is part of many software development activities but in different proportions.</p>
<p style="text-align: left;"><strong>RP:</strong> Remoting styles on top of existing middleware (COM+, EJB).</p>
<p style="text-align: left;"><strong>MES:</strong> Phreaking: phone hacking. 2600 magazine.</p>
<p style="text-align: left;"><strong>OOM:</strong> COM+ components as actors (need knowledge about collaborators). </p>
<p style="text-align: left;"><strong>TIS:</strong> Atomicity and durability as recovery techniques.</p>
<p style="text-align: left;"><strong>NAT:</strong> OSI Layer 1 is independent from the physical media.</p>
<p style="text-align: left;"><strong>PT:</strong> Multilevel view of the language: Word as sentences of token letters. Linguist vs. computer scientist vs. formal-linguist. The latter&#8217;s view of the language as the set of sequences of symbols with identity.</p>
<p style="text-align: left;"><strong>CW:</strong> Screenscrapers and alternate on-screen input of characters. Polling vs. hooking for keyloggers.</p>
<p style="text-align: left;"><strong>PNA:</strong> Control bits are treated as opcodes and create more code complexity. Single PDU leads to proliferation of protocols.</p>
<p style="text-align: left;"><strong>CA:</strong> RISC: load/store architecture.</p>
<p style="text-align: left;"><strong>GC:</strong> Suspension or closure: pair (function, binding of names to locations). The ability of a function to return closure is based on heap allocation.</p>
<p style="text-align: left;"><strong>CS:</strong> Requirements for ADA were set by a committee of users, not language designers. Abstraction tools: package, type (state values) and generic.</p>
<p style="text-align: left;">- Dmitry Vostokov @ <a href="http://www.softwaregeneralist.com/">SoftwareGeneralist.com</a> -</p>
]]></content:encoded>
			<wfw:commentRss>http://www.softwaregeneralist.com/2008/06/27/book-stack-dump-day-4/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Book Stack Dump, Day 3</title>
		<link>http://www.softwaregeneralist.com/2008/06/17/book-stack-dump-day-3/</link>
		<comments>http://www.softwaregeneralist.com/2008/06/17/book-stack-dump-day-3/#comments</comments>
		<pubDate>Tue, 17 Jun 2008 16:00:00 +0000</pubDate>
		<dc:creator>Dmitry Vostokov</dc:creator>
		
		<category><![CDATA[Book Stack Dump]]></category>

		<guid isPermaLink="false">http://www.softwaregeneralist.com/?p=10</guid>
		<description><![CDATA[Book abbreviations correspond to titles on the picture from this link:
Cooperative Multireading Revisited and Started
POSA2: Inherent and accidental complexities. Tactical and Strategic aspects of concurrent software (low level OS mechanism vs. threading model).
POSA5: design metaheuristic: tractable forward model (essence of agile methods).
AMP: Shared counter and mutual exclusion.
EIP: Loose coupling: send and forget.
MM: Every Java program [...]]]></description>
			<content:encoded><![CDATA[<h6 style="text-align: left;">Book abbreviations correspond to titles on the picture from this link:</h6>
<h6 style="text-align: left;"><a title="Permanent Link to Cooperative Multireading Revisited and Started" rel="bookmark" href="http://www.softwaregeneralist.com/2008/06/04/cooperative-multireading-revisited/">Cooperative Multireading Revisited and Started</a></h6>
<p style="text-align: left;"><strong>POSA2:</strong> Inherent and accidental complexities. Tactical and Strategic aspects of concurrent software (low level OS mechanism vs. threading model).</p>
<p style="text-align: left;"><strong>POSA5:</strong> design metaheuristic: tractable forward model (essence of agile methods).</p>
<p style="text-align: left;"><strong>AMP:</strong> Shared counter and mutual exclusion.</p>
<p style="text-align: left;"><strong>EIP:</strong> Loose coupling: send and forget.</p>
<p style="text-align: left;"><strong>MM:</strong> Every Java program is automatically concurrent. Class extension vs. interface implementation. No preemption guarantee in Java threading. Sleep statements are useful for testing.</p>
<p style="text-align: left;"><strong>SC:</strong> Fun as a motivator for building software.</p>
<p style="text-align: left;"><strong>ASS:</strong> Stress in support is due to chaos.</p>
<p style="text-align: left;"><strong>SM:</strong> Software maintenance: modification after delivery.</p>
<p style="text-align: left;"><strong>CC:</strong> Code construction as a distinct activity that is guaranteed to be done.</p>
<p style="text-align: left;"><strong>RP:</strong> Technology projections for patterns.</p>
<p style="text-align: left;"><strong>MES:</strong> 802.11i is a security enhanced version of 802.11(a|b|g).</p>
<p style="text-align: left;"><strong>OOM:</strong> The influence of WIMP on OO languages.</p>
<p style="text-align: left;"><strong>TIS:</strong> Isolation hides other transactions and concurrency and requires concurrency control techniques.</p>
<p style="text-align: left;"><strong>NAT:</strong> Troubleshooting from bottom to top.</p>
<p style="text-align: left;"><strong>PT:</strong> Timeless structures for a mathematician vs. structure dynamics for a computer scientist.</p>
<p style="text-align: left;"><strong>CW:</strong> Stages of a crimeware attack: distribution, infection, execution, data retrieval, data misappropriation.</p>
<p style="text-align: left;"><strong>PNA:</strong> Logical vs. physical address spaces in networking (like in OS). Paradigm of connectionless.</p>
<p style="text-align: left;"><strong>CA:</strong> Pipelining, pipe segment, throughput, processor cycle.</p>
<p style="text-align: left;"><strong>GC:</strong> User program as mutator of the graph connectivity for heap structures.</p>
<p style="text-align: left;"><strong>CS:</strong> Static (scope of variables) and dynamic links (call scope) for procedure activation records.</p>
<p style="text-align: left;">- Dmitry Vostokov @ <a href="http://www.softwaregeneralist.com/">SoftwareGeneralist.com</a> -</p>
]]></content:encoded>
			<wfw:commentRss>http://www.softwaregeneralist.com/2008/06/17/book-stack-dump-day-3/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Book Stack Dump, Day 2</title>
		<link>http://www.softwaregeneralist.com/2008/06/10/book-stack-dump-day-2/</link>
		<comments>http://www.softwaregeneralist.com/2008/06/10/book-stack-dump-day-2/#comments</comments>
		<pubDate>Tue, 10 Jun 2008 14:08:13 +0000</pubDate>
		<dc:creator>Dmitry Vostokov</dc:creator>
		
		<category><![CDATA[Book Stack Dump]]></category>

		<guid isPermaLink="false">http://www.softwaregeneralist.com/?p=9</guid>
		<description><![CDATA[Book abbreviations correspond to titles on the picture from this link:
Cooperative Multireading Revisited and Started
POSA2: To Read: Mind and Nature: A Necessary Unity by Gregory Bateson. Grouping patterns into key problem areas. Pattern language - interwoven related patterns.
POSA5: Design metaheuristics. Tractable inverse models.
AMP: Future advances in speed will come through parallelism via shared memory. The [...]]]></description>
			<content:encoded><![CDATA[<h6 style="text-align: left;">Book abbreviations correspond to titles on the picture from this link:</h6>
<h6 style="text-align: left;"><a title="Permanent Link to Cooperative Multireading Revisited and Started" rel="bookmark" href="http://www.softwaregeneralist.com/2008/06/04/cooperative-multireading-revisited/">Cooperative Multireading Revisited and Started</a></h6>
<p style="text-align: left;"><strong>POSA2:</strong> To Read: Mind and Nature: A Necessary Unity by Gregory Bateson. Grouping patterns into key problem areas. Pattern language - interwoven related patterns.</p>
<p style="text-align: left;"><strong>POSA5:</strong> Design metaheuristics. Tractable inverse models.</p>
<p style="text-align: left;"><strong>AMP:</strong> Future advances in speed will come through parallelism via shared memory. The model of concurrent asynchronous shared-memory computability. The importance of liveness property.</p>
<p style="text-align: left;"><strong>EIP:</strong> Asynchronous messaging is important in application integration.</p>
<p style="text-align: left;"><strong>MM:</strong> Communication overhead in multithreaded program</p>
<p style="text-align: left;"><strong>SC:</strong> software construction -&gt; problem-solving -&gt; creativity. Conflict between creativity and discipline.</p>
<p style="text-align: left;"><strong>ASS:</strong> Support department is like hospital emergency room. Transforming chaos to dance.</p>
<p style="text-align: left;"><strong>SM:</strong> Software Maintenance as a distinct discipline. Theory of software chance.</p>
<p style="text-align: left;"><strong>CC:</strong> The importance of understanding software construction practices beyond the working environment and language.</p>
<p style="text-align: left;"><strong>RP:</strong> Myth that remote communication is transparent to applications. Decoupling of operation invocation in space and time.</p>
<p style="text-align: left;"><strong>MES:</strong> 802.1x port based access control for wired and wireless.</p>
<p style="text-align: left;"><strong>OOM:</strong> OO language Simula pre-dates structured programming. OO is natural for simulation modeling.</p>
<p style="text-align: left;"><strong>TIS:</strong> Transactions important for management workflows. Transaction concept is abstract concept.</p>
<p style="text-align: left;"><strong>NAT:</strong> Layered methodology for network analysis.</p>
<p style="text-align: left;"><strong>PT:</strong> Parsing is a process of structuring a linear representation according to a given grammar. Grammatical inference - a reverse process.</p>
<p style="text-align: left;"><strong>CW:</strong> Crimeware: social engineering or security exploits.</p>
<p style="text-align: left;"><strong>PNA:</strong> ARPANET was built by people with OS background not communications.</p>
<p style="text-align: left;"><strong>CA:</strong> Cost-performance-power trade-off. ILP/TLP/DLP Instruction/Thread/Data-level parallelism (multicores).</p>
<p style="text-align: left;"><strong>GC:</strong> Myths of garbage collectors - overhead.</p>
<p style="text-align: left;"><strong>CS:</strong> Access time: time (receipt) - time (initiation). For sequential access half rotation time is important.</p>
<p style="text-align: left;">- Dmitry Vostokov @ <a href="http://www.softwaregeneralist.com/">SoftwareGeneralist.com</a> -</p>
]]></content:encoded>
			<wfw:commentRss>http://www.softwaregeneralist.com/2008/06/10/book-stack-dump-day-2/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Book Stack Dump, Day 1</title>
		<link>http://www.softwaregeneralist.com/2008/06/04/book-stack-dump-day-1/</link>
		<comments>http://www.softwaregeneralist.com/2008/06/04/book-stack-dump-day-1/#comments</comments>
		<pubDate>Wed, 04 Jun 2008 16:39:20 +0000</pubDate>
		<dc:creator>Dmitry Vostokov</dc:creator>
		
		<category><![CDATA[Book Stack Dump]]></category>

		<guid isPermaLink="false">http://www.softwaregeneralist.com/?p=8</guid>
		<description><![CDATA[Book abbreviations correspond to titles on the picture from this link:
Cooperative Multireading Revisited and Started
POSA2: The importance of understanding middleware.
POSA5: Design: Thinking before building.
AMP: Think concurrently - a skill.
EIP: Learn technology: goal to apply it effectively. Integration via messaging - use patterns to leverage forthcoming technologies.
MM: Processes and threads: an OS view.
SC: Great divide: Discipline/Control [...]]]></description>
			<content:encoded><![CDATA[<h6>Book abbreviations correspond to titles on the picture from this link:</h6>
<h6><a title="Permanent Link to Cooperative Multireading Revisited and Started" rel="bookmark" href="http://www.softwaregeneralist.com/2008/06/04/cooperative-multireading-revisited/">Cooperative Multireading Revisited and Started</a></h6>
<p style="text-align: left;"><strong>POSA2: </strong>The importance of understanding middleware.</p>
<p style="text-align: left;"><strong>POSA5: </strong>Design: Thinking before building.</p>
<p style="text-align: left;"><strong>AMP: </strong>Think concurrently - a skill.</p>
<p style="text-align: left;"><strong>EIP: </strong>Learn technology: goal to apply it effectively. Integration via messaging - use patterns to leverage forthcoming technologies.</p>
<p style="text-align: left;"><strong>MM: </strong>Processes and threads: an OS view.</p>
<p style="text-align: left;"><strong>SC: </strong>Great divide: Discipline/Control vs. Agility - all good work done in the middle. Project-dependent approach. Dad style management. Information Age vs. Industrial Age management.</p>
<p style="text-align: left;"><strong>ASS: </strong>A window to a larger world. What to know if you want to be a support manager.</p>
<p style="text-align: left;"><strong>SM: </strong>Maintenance is 70% of life-cycle cost. Education misses software change.</p>
<p style="text-align: left;"><strong>CC: </strong>It takes 5-15 years for research to come into practice. Self-taught programmers need a formal reference book.</p>
<p style="text-align: left;"><strong>RP: </strong>The need to understand distributed middleware and object technology. Projection of Patterns to technology link the patterns.</p>
<p style="text-align: left;"><strong>MES: </strong>3DES.</p>
<p style="text-align: left;"><strong>OOM: </strong>Philosophy of object-oriented methods.</p>
<p style="text-align: left;"><strong>TIS: </strong>Importance of fundamentals of long-term validity vs. specific products. Transactions in OS.</p>
<p style="text-align: left;"><strong>NAT: </strong>Network analysis is a part of problem solving skills. Independence of analysis techniques from software analyzers.</p>
<p style="text-align: left;"><strong>PT: </strong>Non-Chomsky systems and non-canonical parsers? Parallel parsing? Find new ways to use parsers in pattern recognition?</p>
<p style="text-align: left;"><strong>CW: </strong>More and more criminal code than before.</p>
<p style="text-align: left;"><strong>PNA: </strong>Need to discuss networks free from politics and market. Patterns lead to the collapse of complexity. Emergent orthogonality from cognitive shift.</p>
<p style="text-align: left;"><strong>CA: </strong>The need to overcome ignorance in hardware, understanding of the total software/hardware system and quantitative approach to ground thinking.</p>
<p style="text-align: left;"><strong>GC: </strong>Lifetimes can no longer be predicted manually. Manual lifetime control limits OO modularity.</p>
<p style="text-align: left;"><strong>CS: </strong>First-order information hiding (pure OO) is restricted to state transformations (no instances of ADT are allowed in the language). Second-order hiding allows the definition of algebras on ADT (additional operations). Class mechanism can be used to describe ADT but not the way around (the lack of static properties in class definitions). OO information hiding is the mix of first- and second order. Object - first order model. Second-order models provide access to internal state (C++/Java).</p>
<p align="left">- Dmitry Vostokov @ <a href="http://www.softwaregeneralist.com/">SoftwareGeneralist.com</a> -</p>
]]></content:encoded>
			<wfw:commentRss>http://www.softwaregeneralist.com/2008/06/04/book-stack-dump-day-1/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
