<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:copyright="http://blogs.law.harvard.edu/tech/rss" xmlns:image="http://purl.org/rss/1.0/modules/image/">
    <channel>
        <title>Developement</title>
        <link>http://vidmar.net/weblog/category/15.aspx</link>
        <description>Developement</description>
        <language>en-US</language>
        <copyright>David Vidmar</copyright>
        <managingEditor>david@vidmar.net</managingEditor>
        <generator>Subtext Version 1.9.5.176</generator>
        <item>
            <title>All Subversion 1.5 Windows binaries are available!</title>
            <link>http://vidmar.net/weblog/archive/2008/07/03/all-subversion-1.5-windows-binaries-are-available.aspx</link>
            <description>&lt;p&gt;Finally, all three releases for &lt;a href="http://vidmar.net/weblog/archive/2008/06/24/subversion-1.5-released.aspx" target="_blank"&gt;Subversion 1.5&lt;/a&gt; Microsoft Windows binaries are available.&lt;/p&gt; &lt;p&gt;&lt;a href="http://vidmar.net/weblog/images/vidmar_net/weblog/WindowsLiveWriter/AllSubversi.5Windowsbinariesareavailable_854F/image_4.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="68" alt="image" src="http://vidmar.net/weblog/images/vidmar_net/weblog/WindowsLiveWriter/AllSubversi.5Windowsbinariesareavailable_854F/image_thumb_1.png" width="364" border="0" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;&lt;a href="http://www.collab.net/downloads/subversion/" target="_blank"&gt;CollabNet&lt;/a&gt; and &lt;a href="http://www.visualsvn.com/server" target="_blank"&gt;VisualSVN&lt;/a&gt; were available since before, today I finally spotted &lt;a href="http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=91"&gt;Apache 2.0&lt;/a&gt; or &lt;a href="http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=8100"&gt;Apache 2.2&lt;/a&gt; &lt;a href="http://subversion.tigris.org/getting.html#windows" target="_blank"&gt;Tigris&lt;/a&gt; builds, so I can start upgrading servers!&lt;/p&gt;&lt;img src="http://vidmar.net/weblog/aggbug/4618.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>David Vidmar</dc:creator>
            <guid>http://vidmar.net/weblog/archive/2008/07/03/all-subversion-1.5-windows-binaries-are-available.aspx</guid>
            <pubDate>Thu, 03 Jul 2008 07:28:43 GMT</pubDate>
            <wfw:comment>http://vidmar.net/weblog/comments/4618.aspx</wfw:comment>
            <comments>http://vidmar.net/weblog/archive/2008/07/03/all-subversion-1.5-windows-binaries-are-available.aspx#feedback</comments>
            <wfw:commentRss>http://vidmar.net/weblog/comments/commentRss/4618.aspx</wfw:commentRss>
        </item>
        <item>
            <title>Subversion 1.5 released</title>
            <link>http://vidmar.net/weblog/archive/2008/06/24/subversion-1.5-released.aspx</link>
            <description>&lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="32" alt="image" src="http://vidmar.net/weblog/images/vidmar_net/weblog/WindowsLiveWriter/76c2db86c822_78F6/image_3.png" width="236" align="right" border="0" /&gt;If news of last weeks was &lt;a href="http://www.mozilla.com/en-US/firefox/all.html" target="_blank"&gt;Firefox 3&lt;/a&gt;, this week, for devs anyway, is &lt;a href="http://subversion.tigris.org/svn_1.5_releasenotes.html#copy-move-improvements" target="_blank"&gt;Subversion 1.5&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Big new feature is &lt;a href="http://blogs.open.collab.net/svn/2007/05/the_subversion__1.html" target="_blank"&gt;Merge tracking&lt;/a&gt; which should significantly ease use of branching/merging. &lt;/p&gt;  &lt;p&gt;Upgrade should be easy. Upgrade your clients first, those will upgrade working copies automatically. The upgrade the server, which will run on v1.4 repository until you manually upgrade it. Some new features will not be available just using new server, you'll have to upgrade repositories too. This is not done automatically, so v1.4 clients can access it. Once you are read, simply run "svnadmin upgrade" and you are done.&lt;/p&gt;  &lt;p&gt;For more information I suggest you read through &lt;a href="http://subversion.tigris.org/svn_1.5_releasenotes.html#copy-move-improvements" target="_blank"&gt;Subversion 1.5 Release Notes&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt;Right now, Windows binaries by &lt;a href="http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=8100" target="_blank"&gt;Tigris&lt;/a&gt; or &lt;a href="http://www.collab.net/downloads/subversion/" target="_blank"&gt;CollabNet&lt;/a&gt; are not available yet, will have to wait few more days. &lt;a href="http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=8100" target="_blank"&gt;VisualSVN server 1.5&lt;/a&gt; is available. I use Tigris binaries, so I'll wait few more days before upgrading both home and work servers.&lt;/p&gt;  &lt;p&gt;Also, all clients where upgraded. I use &lt;a href="http://tortoisesvn.tigris.org/tsvn_1.5_releasenotes.html" target="_blank"&gt;TortoiseSVN&lt;/a&gt; and &lt;a href="http://www.visualsvn.com/visualsvn/changes/" target="_blank"&gt;VisualSVN&lt;/a&gt; so don't forget to upgrade those too..&lt;/p&gt;&lt;img src="http://vidmar.net/weblog/aggbug/4615.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>David Vidmar</dc:creator>
            <guid>http://vidmar.net/weblog/archive/2008/06/24/subversion-1.5-released.aspx</guid>
            <pubDate>Tue, 24 Jun 2008 06:47:03 GMT</pubDate>
            <wfw:comment>http://vidmar.net/weblog/comments/4615.aspx</wfw:comment>
            <comments>http://vidmar.net/weblog/archive/2008/06/24/subversion-1.5-released.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://vidmar.net/weblog/comments/commentRss/4615.aspx</wfw:commentRss>
        </item>
        <item>
            <title>LINQ: Detecting if entity is already pending insert</title>
            <link>http://vidmar.net/weblog/archive/2008/06/17/linq-detecting-if-entity-is-already-pending-insert.aspx</link>
            <description>&lt;p&gt;I ran into an issue with my latest project at work that uses LINQ. I was &lt;a href="http://en.wikipedia.org/wiki/Upsert" target="_blank"&gt;upserting&lt;/a&gt; some entities and when I encountered a duplicate, I queried the database, but not the pending inserts of my DataContext, so my import failed with "duplicate primary key" type of error. &lt;/p&gt;  &lt;p&gt;It turns out it's fairly easy to query those pending inserts too.&lt;/p&gt;  &lt;p&gt;Lets have a DataContext and do an insert of a new Color entity:&lt;/p&gt;  &lt;div class="code"&gt;&lt;font color="#000000"&gt;DataContext&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#000000"&gt;dc&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;new&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#000000"&gt;DataContext()&lt;/font&gt;&lt;font color="#0000ff"&gt;;&lt;/font&gt; &lt;/div&gt;  &lt;div class="code"&gt;&lt;font color="#000000"&gt;dc.Colors.InsertOnSubmit(&lt;/font&gt;&lt;font color="#0000ff"&gt;new&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#000000"&gt;Color()&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#000000"&gt;Code&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#808080"&gt; "F0F8FF"&lt;/font&gt;&lt;font color="#000000"&gt;,&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#000000"&gt;Name&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#808080"&gt; "AliceBlue" &lt;/font&gt;&lt;font color="#000000"&gt;})&lt;/font&gt;&lt;font color="#0000ff"&gt;;&lt;/font&gt; &lt;/div&gt;  &lt;div class="code"&gt; &lt;/div&gt;  &lt;div class="code"&gt;Since we didn't do &lt;strong&gt;dc.SubmitChanges()&lt;/strong&gt;, the following query returns nothing:&lt;/div&gt;  &lt;div class="code"&gt; &lt;/div&gt;  &lt;div class="code"&gt;&lt;font color="#0000ff"&gt;var&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#000000"&gt;r&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;from&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#000000"&gt;c&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;in&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#000000"&gt;dc.Colors&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;where&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#000000"&gt;c.Code&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#808080"&gt; "F0F8FF" &lt;/font&gt;&lt;font color="#0000ff"&gt;select&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#000000"&gt;c&lt;/font&gt;&lt;font color="#0000ff"&gt;;&lt;/font&gt; &lt;/div&gt;  &lt;p&gt;Enter &lt;strong&gt;GetChangeSet()&lt;/strong&gt;. Let's count inserts:&lt;/p&gt;  &lt;div class="code"&gt;&lt;font color="#0000ff"&gt;int&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#000000"&gt;allPendingInserts&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#000000"&gt;dc.GetChangeSet().Inserts.Count()&lt;/font&gt;&lt;font color="#0000ff"&gt;;&lt;/font&gt; &lt;/div&gt;  &lt;div class="code"&gt; &lt;/div&gt;  &lt;div class="code"&gt;But we can have pending inserts of different types/tables. Let's just count pending colors:&lt;/div&gt;  &lt;div class="code"&gt; &lt;/div&gt;  &lt;div class="code"&gt;&lt;font color="#0000ff"&gt;int&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#000000"&gt;colorsPendingInserts&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#000000"&gt;dc.GetChangeSet().Inserts.OfType(Color).Count()&lt;/font&gt;&lt;font color="#0000ff"&gt;;&lt;/font&gt; &lt;/div&gt;  &lt;div class="code"&gt; &lt;/div&gt;  &lt;div class="code"&gt;And now we are not very far from querying inserted records:&lt;/div&gt;  &lt;div class="code"&gt; &lt;/div&gt;  &lt;div class="code"&gt;&lt;font color="#2b91af"&gt;IEnumerable&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;Color&amp;gt;&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#000000"&gt;insertedColors&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#000000"&gt;dc.GetChangeSet().Inserts.OfType&amp;lt;Color&amp;gt;()&lt;/font&gt;&lt;font color="#0000ff"&gt;;&lt;/font&gt;&lt;font color="#808080"&gt;      &lt;br /&gt;      &lt;br /&gt;&lt;/font&gt;&lt;font color="#2b91af"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.WriteLine(&lt;/font&gt;&lt;font color="#808080"&gt;      &lt;br /&gt;    &lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;.Format(&lt;/font&gt;&lt;font color="#808080"&gt;      &lt;br /&gt;        "Q: Is color #F0F8FF already pending insert?\n" &lt;/font&gt;&lt;font color="#000000"&gt;+&lt;/font&gt;&lt;font color="#808080"&gt;      &lt;br /&gt;        "A: {0}"&lt;/font&gt;&lt;font color="#000000"&gt;,&lt;/font&gt;&lt;font color="#808080"&gt;      &lt;br /&gt;        &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;from&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#000000"&gt;q&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;in&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#000000"&gt;insertedColors&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;where&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#000000"&gt;q.Code&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;==&lt;/font&gt;&lt;font color="#808080"&gt; "F0F8FF" &lt;/font&gt;&lt;font color="#0000ff"&gt;select&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#000000"&gt;q).Count&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&lt;/font&gt;&lt;font color="#808080"&gt; &lt;/font&gt;&lt;font color="#800000"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;font color="#0000ff"&gt;;&lt;/font&gt; &lt;/div&gt;  &lt;div class="code"&gt; &lt;/div&gt;  &lt;div class="code"&gt;Did I mention I really like LINQ? &lt;em&gt;(except when crossing WCF, of course)&lt;/em&gt;&lt;/div&gt;&lt;img src="http://vidmar.net/weblog/aggbug/4612.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>David Vidmar</dc:creator>
            <guid>http://vidmar.net/weblog/archive/2008/06/17/linq-detecting-if-entity-is-already-pending-insert.aspx</guid>
            <pubDate>Tue, 17 Jun 2008 10:32:09 GMT</pubDate>
            <wfw:comment>http://vidmar.net/weblog/comments/4612.aspx</wfw:comment>
            <comments>http://vidmar.net/weblog/archive/2008/06/17/linq-detecting-if-entity-is-already-pending-insert.aspx#feedback</comments>
            <wfw:commentRss>http://vidmar.net/weblog/comments/commentRss/4612.aspx</wfw:commentRss>
        </item>
        <item>
            <title>Save SQL query results with column names in MSSSMS</title>
            <link>http://vidmar.net/weblog/archive/2008/06/05/save-sql-query-results-with-column-names-in-msssms.aspx</link>
            <description>&lt;p&gt;Now this is so useful it's worth to &lt;a href="http://aspadvice.com/blogs/ssmith/archive/2007/12/01/Save-SQL-Query-Results-With-Column-Names.aspx" target="_blank"&gt;repost&lt;/a&gt;!&lt;/p&gt;  &lt;p&gt;If you need to copy query result in MS SQL Server Management Studio &lt;strong&gt;with column names&lt;/strong&gt;, there is a checkbox in the options to do that. That should be really by turned on by default, imho.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://aspadvice.com/blogs/ssmith/archive/2007/12/01/Save-SQL-Query-Results-With-Column-Names.aspx" target="_blank"&gt;Thanks you, Steven Smith&lt;/a&gt;:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;em&gt;A minor frustration I've had with SQL Server for years is that when copying the results to Excel, the column names are not included.  Well, &lt;/em&gt;&lt;a href="http://aspadvice.com/blogs/name/archive/2007/11/30/Copying-Data-From-SQL-Server-Management-Studio.aspx"&gt;&lt;em&gt;Brendan blogged about this yesterday&lt;/em&gt;&lt;/a&gt;&lt;em&gt;, and in a great demonstration of the value of blogging, he received a comment with the answer to this problem within a couple of hours.  It turns out this can be done by going to Tools - Options - Query Results - Sql Server - Results to Grid - Include column headers when copying or saving results.  Beautiful.  Here's a screenshot if you have problems finding it.&lt;/em&gt;&lt;/p&gt;    &lt;p&gt;&lt;a href="http://vidmar.net/weblog/images/vidmar_net/weblog/WindowsLiveWriter/SaveSQLqueryresultswithcolumnnamesinMSSS_DA9A/image_2.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="302" alt="image" src="http://vidmar.net/weblog/images/vidmar_net/weblog/WindowsLiveWriter/SaveSQLqueryresultswithcolumnnamesinMSSS_DA9A/image_thumb.png" width="500" border="0" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Be sure to check "Result to Text" to, since there is an option to include columns there too!&lt;/p&gt;&lt;img src="http://vidmar.net/weblog/aggbug/4608.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>David Vidmar</dc:creator>
            <guid>http://vidmar.net/weblog/archive/2008/06/05/save-sql-query-results-with-column-names-in-msssms.aspx</guid>
            <pubDate>Thu, 05 Jun 2008 13:32:42 GMT</pubDate>
            <wfw:comment>http://vidmar.net/weblog/comments/4608.aspx</wfw:comment>
            <comments>http://vidmar.net/weblog/archive/2008/06/05/save-sql-query-results-with-column-names-in-msssms.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://vidmar.net/weblog/comments/commentRss/4608.aspx</wfw:commentRss>
        </item>
        <item>
            <title>Java, Flash and Oracle developers wanted</title>
            <link>http://vidmar.net/weblog/archive/2008/06/05/java-flash-and-oracle-developers-wanted.aspx</link>
            <description>&lt;p&gt;&lt;em&gt;A friend of a friend asked me to post this job offers...&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;&lt;em&gt;&lt;/em&gt;&lt;/p&gt;  &lt;h3&gt;Great Position Openings for Ambitious People!&lt;/h3&gt;  &lt;p&gt;&lt;b&gt;Who We Are&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;We are an international gaming/betting SW provider. We are in process of opening an office located in &lt;a href="http://maps.google.com/maps?f=q&amp;amp;hl=en&amp;amp;geocode=&amp;amp;q=Ljubljana&amp;amp;ie=UTF8&amp;amp;ll=46.073231,14.501953&amp;amp;spn=43.279935,76.992188&amp;amp;z=4&amp;amp;iwloc=addr" target="_blank"&gt;Ljubljana&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt;&lt;b&gt;Position(s) Summary &lt;/b&gt;&lt;/p&gt;  &lt;p&gt;We are offering positions in &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Java development &lt;/li&gt;    &lt;li&gt;Flash development&lt;/li&gt;    &lt;li&gt;Database development (Oracle) &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;   &lt;br /&gt;For detailed description see below. &lt;/p&gt;  &lt;p&gt;&lt;b&gt;Send your ENGLISH CV &amp;amp; Cover Letter to: &lt;a href="mailto:matevz2008@gmail.com"&gt;matevz2008@gmail.com&lt;/a&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;We thrive in fast paced international environment with great attention to detail. We are searching for additional (international) members for our team who are high –achievers, articulate, multi-lingual, positive, self-driven, and highly conscious of producing excellent work. Ideal individual must have strong communication skills, both verbally/nonverbally and be able to work independently as well as within a team environment. &lt;/p&gt;  &lt;p&gt;Students entering 4th year of IT university and/any Engineering University programmes are also ideal candidates.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Above all we support the right person who shows an eagerness to learn, strive to deliver results and to add value.&lt;/b&gt;&lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;h3&gt;&lt;strong&gt;#1 - Java developer &lt;/strong&gt;&lt;/h3&gt;  &lt;p&gt;&lt;strong&gt;Function:&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Server-side (no GUI) Java SE development, responsible for business logic and/or framework development (design + program + JUnit test + document).&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Profile:&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Experience with object-oriented design &amp;amp; programming in Java&lt;/li&gt;    &lt;li&gt;Willing to work in a fast-paced environment (adapt) and learn new things.&lt;/li&gt;    &lt;li&gt;Self-sufficient (able to work under a minimal supervision), sense of detail, cooperative and team-minded plus excellent communication skills.&lt;/li&gt;    &lt;li&gt;Language: English&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Environment:&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Java 6 SE + Oracle 11g + RedHat Linux&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;   &lt;br /&gt;&lt;strong&gt;Beneficial experience for candidate (not mandatory):&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;ORM (Hibernate) / JPA, JTA, JMS&lt;/li&gt;    &lt;li&gt;building modular &amp;amp; reusable components (e.g. middleware/framework libraries)&lt;/li&gt;    &lt;li&gt;building distributed solutions (JCache, Oracle Coherence, et. al)&lt;/li&gt;    &lt;li&gt;concurrent programming&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt; &lt;/p&gt;  &lt;h3&gt;#2 - Flash developer&lt;/h3&gt;  &lt;p&gt;&lt;strong&gt;Function:&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Flash programming in ActionScript 3 (client framework, e.g. multiwindow support, inter-window communication + business logic (features)).&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Profile:&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Experience with object-oriented programming (not design) in AS3&lt;/li&gt;    &lt;li&gt;Willing to work in a fast-paced environment (adapt) and learn new things.&lt;/li&gt;    &lt;li&gt;Self-sufficient (able to work under a minimal supervision), sense of detail, cooperative and team-minded plus excellent communication skills.&lt;/li&gt;    &lt;li&gt;Language: English&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Beneficial experience for candidate (not mandatory):&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Adobe Flex 3 + Blaze DS&lt;/li&gt;    &lt;li&gt;experience with Java&lt;/li&gt;    &lt;li&gt;HTML/XHTML, CSS     &lt;br /&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;h3&gt;#3 - Database developer (Oracle):&lt;/h3&gt;  &lt;p&gt;&lt;strong&gt;Function:&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Create and maintain (take ownership) of the physical data model (Oracle 11g on RedHat Linux).&lt;/li&gt;    &lt;li&gt;Mentor application developers working with database (what to do, what not to do).&lt;/li&gt;    &lt;li&gt;Build and/or optimize (review) database DML/DDL requested/built by application developers.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Profile: &lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Required experience with data modeling and SQL optimization.&lt;/li&gt;    &lt;li&gt;Knowledge of database optimization (OLAP, DSS).&lt;/li&gt;    &lt;li&gt;Willing to work in a fast-paced environment (adapt) and learn new things.&lt;/li&gt;    &lt;li&gt;Self-sufficient (able to work under a minimal supervision), sense of detail, cooperative and team-minded plus excellent communication skills.&lt;/li&gt;    &lt;li&gt;Language: English.     &lt;br /&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Beneficial experience for candidate (not mandatory):&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;PL/SQL, Java SE programming&lt;/li&gt;    &lt;li&gt;JMS, ORM (Hibernate) / JPA, JTA technologies&lt;/li&gt; &lt;/ul&gt;&lt;img src="http://vidmar.net/weblog/aggbug/4607.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>David Vidmar</dc:creator>
            <guid>http://vidmar.net/weblog/archive/2008/06/05/java-flash-and-oracle-developers-wanted.aspx</guid>
            <pubDate>Thu, 05 Jun 2008 11:32:53 GMT</pubDate>
            <wfw:comment>http://vidmar.net/weblog/comments/4607.aspx</wfw:comment>
            <comments>http://vidmar.net/weblog/archive/2008/06/05/java-flash-and-oracle-developers-wanted.aspx#feedback</comments>
            <wfw:commentRss>http://vidmar.net/weblog/comments/commentRss/4607.aspx</wfw:commentRss>
        </item>
        <item>
            <title>Database of country names, numeric, alpha-2 and alpha-3 ISO codes in SQL</title>
            <link>http://vidmar.net/weblog/archive/2008/05/23/database-of-country-names-numeric-alpha-2-and-alpha-3-iso-codes.aspx</link>
            <description>&lt;p&gt;Having spent WAY more time building this as appropriate for last hours of Friday, I decided to put this SQL script on the web for everyone.&lt;/p&gt;  &lt;p&gt;This are SQL statements for filling countries table. Tables includes &lt;a href="http://en.wikipedia.org/wiki/ISO_3166-1_numeric" target="_blank"&gt;numeric&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/ISO_3166-1_alpha-2" target="_blank"&gt;alpha-2&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/ISO_3166-1_alpha-3" target="_blank"&gt;alpha-3&lt;/a&gt; ISO codes.  Adjust table and column names to your standards and you're good to go. Script is tested on Microsoft SQL Server but it should run / be easily adjustable for any other database.&lt;/p&gt;  &lt;pre&gt;INSERT INTO Country (CountryID, ISO2, ISO3, Name) VALUES (4, 'AF', 'AFG', 'Afghanistan')
INSERT INTO Country (CountryID, ISO2, ISO3, Name) VALUES (248, 'AX', 'ALA', 'Aland Islands')
INSERT INTO Country (CountryID, ISO2, ISO3, Name) VALUES (8, 'AL', 'ALB', 'Albania')
INSERT INTO Country (CountryID, ISO2, ISO3, Name) VALUES (12, 'DZ', 'DZA', 'Algeria')
INSERT INTO Country (CountryID, ISO2, ISO3, Name) VALUES (16, 'AS', 'ASM', 'American Samoa')
INSERT INTO Country (CountryID, ISO2, ISO3, Name) VALUES (20, 'AD', 'AND', 'Andorra')
INSERT INTO Country (CountryID, ISO2, ISO3, Name) VALUES (24, 'AO', 'AGO', 'Angola')
...&lt;/pre&gt;

&lt;p&gt;&lt;a href="http://vidmar.net/download/CountrySQL.txt" target="_blank"&gt;&lt;strong&gt;(click for full script)&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Compiled from &lt;/em&gt;&lt;a href="http://en.wikipedia.org/wiki/ISO_3166-1" target="_blank"&gt;&lt;em&gt;Wikipedia ISO 3166-1 article&lt;/em&gt;&lt;/a&gt;&lt;em&gt;, last updated on 23rd of May 2008.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt; &lt;/p&gt;

&lt;p&gt;Here is also "create table" script for for quick start.&lt;/p&gt;

&lt;pre&gt;create table Country (
   CountryID            int                  not null,
   Iso2                 char(2)              not null,
   Iso3                 char(3)              not null,
   Name                 varchar(100)         not null,
   constraint PK_COUNTRY primary key nonclustered (CountryID)
)&lt;/pre&gt;

&lt;p&gt;&lt;/p&gt;

&lt;div class="wlWriterSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:17dc0a37-5801-4dbb-a0e9-3238da93d489" style="padding-right: 0px; display: inline; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/countries" rel="tag"&gt;countries&lt;/a&gt;,&lt;a href="http://technorati.com/tags/iso" rel="tag"&gt;iso&lt;/a&gt;,&lt;a href="http://technorati.com/tags/sql" rel="tag"&gt;sql&lt;/a&gt;,&lt;a href="http://technorati.com/tags/script" rel="tag"&gt;script&lt;/a&gt;&lt;/div&gt;&lt;img src="http://vidmar.net/weblog/aggbug/4603.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>David Vidmar</dc:creator>
            <guid>http://vidmar.net/weblog/archive/2008/05/23/database-of-country-names-numeric-alpha-2-and-alpha-3-iso-codes.aspx</guid>
            <pubDate>Fri, 23 May 2008 15:13:05 GMT</pubDate>
            <wfw:comment>http://vidmar.net/weblog/comments/4603.aspx</wfw:comment>
            <comments>http://vidmar.net/weblog/archive/2008/05/23/database-of-country-names-numeric-alpha-2-and-alpha-3-iso-codes.aspx#feedback</comments>
            <slash:comments>4</slash:comments>
            <wfw:commentRss>http://vidmar.net/weblog/comments/commentRss/4603.aspx</wfw:commentRss>
        </item>
        <item>
            <title>GetSysinternals 1.3</title>
            <link>http://vidmar.net/weblog/archive/2008/04/21/getsysinternals-1.3.aspx</link>
            <description>&lt;p&gt;I just published version 1.3 of &lt;a href="http://www.codeplex.com/GetSysinternals" target="_blank"&gt;GetSysinternals&lt;/a&gt; script to CodePlex.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Download:&lt;/strong&gt;&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://www.codeplex.com/GetSysinternals/Release/ProjectReleases.aspx?ReleaseId=12766" target="_blank"&gt;GetSysinternals 1.3&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;strong&gt;Changes:&lt;/strong&gt;&lt;/p&gt; &lt;ul&gt; &lt;li&gt;New tools:&lt;/li&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://technet.microsoft.com/en-us/sysinternals/bb963907.aspx" target="_blank"&gt;AdExplorer&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://technet.microsoft.com/en-us/sysinternals/bb897539.aspx" target="_blank"&gt;AdInsight&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://technet.microsoft.com/en-us/sysinternals/cc300361.aspx" target="_blank"&gt;ShellRunAs&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;img src="http://vidmar.net/weblog/aggbug/4598.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>David Vidmar</dc:creator>
            <guid>http://vidmar.net/weblog/archive/2008/04/21/getsysinternals-1.3.aspx</guid>
            <pubDate>Mon, 21 Apr 2008 21:36:29 GMT</pubDate>
            <wfw:comment>http://vidmar.net/weblog/comments/4598.aspx</wfw:comment>
            <comments>http://vidmar.net/weblog/archive/2008/04/21/getsysinternals-1.3.aspx#feedback</comments>
            <wfw:commentRss>http://vidmar.net/weblog/comments/commentRss/4598.aspx</wfw:commentRss>
        </item>
        <item>
            <title>Printing PDF documents in C#</title>
            <link>http://vidmar.net/weblog/archive/2008/04/14/printing-pdf-documents-in-c.aspx</link>
            <description>&lt;p&gt;&lt;/p&gt; &lt;p&gt;I never though about it, but &lt;strong&gt;printing&lt;/strong&gt; (not creating!)  PDF documents from code without user intervention is not a trivial task. Nearly everyone has &lt;a href="http://www.adobe.com/products/acrobat/readstep2.html" target="_blank"&gt;Adobe Reader&lt;/a&gt; or an &lt;a href="http://foxitsoftware.com/pdf/rd_intro.php" target="_blank"&gt;alternative PDF viewer&lt;/a&gt; installed doesn't help a lot.  &lt;/p&gt;&lt;p&gt;Let's look at the options: &lt;/p&gt;&lt;ul&gt; &lt;li&gt;Adobe has &lt;a href="http://www.adobe.com/devnet/acrobat/?navID=downloads" target="_blank"&gt;Acrobat SDK&lt;/a&gt;, you can use ActiveX controls to view the document, but there is no stable COM, ActiveX or even command line interface for printing documents without user intervention. User at least has to print a button. &lt;/li&gt; &lt;li&gt;There are &lt;a href="http://www.devdirect.com/ALL/PDF_PRINT_PCAT_2072.aspx" target="_blank"&gt;pricey commercial components&lt;/a&gt; that promise this, but nothing free and handy. &lt;/li&gt; &lt;li&gt;There &lt;a href="http://weblogs.asp.net/jgaylord/archive/2006/05/19/447379.aspx" target="_blank"&gt;claims on web that you can do that using Adobe Type Library&lt;/a&gt;, but that's only possible if a client has Adobe Acrobat (the real thing, but free reader) installed, which is of course a serious limitation, show stopper even.&lt;/li&gt; &lt;li&gt;&lt;a href="http://aspalliance.com/514_CodeSnip_Printing_PDF_from_NET.2" target="_blank"&gt;Starting Adobe Reader with command line switch&lt;/a&gt; is only possible with very old version of the Reader and it doesn't work with current versions,&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;But if you dig deep enough you will find out that there is a way to automate printing. By using &lt;a href="http://en.wikipedia.org/wiki/Dynamic_Data_Exchange" target="_blank"&gt;DDE&lt;/a&gt;, of all things (if you don't know what DDE is, you probably didn't use a phone with a rotary dial, either). &lt;/p&gt;&lt;p&gt;Here is a sample code I used to print PDF files:&lt;/p&gt;&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;bool&lt;/span&gt; tryStart = &lt;span class="kwrd"&gt;false&lt;/span&gt;;
&lt;span class="kwrd"&gt;bool&lt;/span&gt; connected = &lt;span class="kwrd"&gt;false&lt;/span&gt;;
&lt;span class="kwrd"&gt;do&lt;/span&gt;
{
    &lt;span class="kwrd"&gt;try&lt;/span&gt;
    {
        &lt;span class="rem"&gt;// Connect to the server.  It must be running or an exception will be thrown.&lt;/span&gt;
        client.Connect();
        connected = &lt;span class="kwrd"&gt;true&lt;/span&gt;;
    }
    &lt;span class="kwrd"&gt;catch&lt;/span&gt; (DdeException)
    {
        &lt;span class="rem"&gt;// try running Adobe Reader&lt;/span&gt;
        System.Diagnostics.Process p = &lt;span class="kwrd"&gt;new&lt;/span&gt; System.Diagnostics.Process();
        p.StartInfo.FileName = &lt;span class="str"&gt;"AcroRd32.exe"&lt;/span&gt;;
        p.Start();
        p.WaitForInputIdle();
        &lt;span class="rem"&gt;// try this once&lt;/span&gt;
        tryStart = !tryStart;                            
    }
} &lt;span class="kwrd"&gt;while&lt;/span&gt; (tryStart &amp;amp;&amp;amp; !connected);

&lt;span class="rem"&gt;// sucessfully connected?&lt;/span&gt;
&lt;span class="kwrd"&gt;if&lt;/span&gt; (connected)
{
    &lt;span class="rem"&gt;// Synchronous Execute Operation&lt;/span&gt;
    client.Execute(&lt;span class="str"&gt;"[DocOpen(\"C:\\Test.pdf\")]"&lt;/span&gt;, 60000);
    client.Execute(&lt;span class="str"&gt;"[FilePrintSilent(\"C:\\Test.pdf\")]"&lt;/span&gt;, 60000);
    client.Execute(&lt;span class="str"&gt;"[DocClose(\"C:\\Test.pdf\")]"&lt;/span&gt;, 60000);
    client.Execute(&lt;span class="str"&gt;"[AppExit]"&lt;/span&gt;, 60000);
}
&lt;/pre&gt;
&lt;style type="text/css"&gt;&lt;![CDATA[csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }
]]&gt;&lt;/style&gt;

&lt;p&gt;Since .NET doesn't natively support DDE, I used free .NET library that was published on GotDotNet, which was &lt;a href="http://code.msdn.microsoft.com/" target="_blank"&gt;moved to MSDN Code Gallery&lt;/a&gt;. The sample was not ported so it isn't available for download, which is a real shame. There is another &lt;a href="http://www.codeplex.com/ndde" target="_blank"&gt;.NET DDE library on CodePlex&lt;/a&gt;, which will work too.
&lt;/p&gt;&lt;p&gt;Next best thing is an &lt;a href="http://www.codeproject.com/cpp/ReaderWrapper.asp" target="_blank"&gt;C++ article on CodeProject that inspired the code above&lt;/a&gt;.
&lt;/p&gt;&lt;p&gt; &lt;/p&gt;
&lt;div style="padding-right: 0px; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px; display: inline" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:e8bbb290-e2d6-4403-b5e2-7f16afda2d93" class="wlWriterSmartContent"&gt;Technorati tags: &lt;a href="http://technorati.com/tags/.net" rel="tag"&gt;.net&lt;/a&gt;, &lt;a href="http://technorati.com/tags/C#" rel="tag"&gt;C#&lt;/a&gt;, &lt;a href="http://technorati.com/tags/PDF" rel="tag"&gt;PDF&lt;/a&gt;, &lt;a href="http://technorati.com/tags/printing" rel="tag"&gt;printing&lt;/a&gt;, &lt;a href="http://technorati.com/tags/print" rel="tag"&gt;print&lt;/a&gt;, &lt;a href="http://technorati.com/tags/DDE" rel="tag"&gt;DDE&lt;/a&gt;&lt;/div&gt;&lt;img src="http://vidmar.net/weblog/aggbug/4595.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>David Vidmar</dc:creator>
            <guid>http://vidmar.net/weblog/archive/2008/04/14/printing-pdf-documents-in-c.aspx</guid>
            <pubDate>Mon, 14 Apr 2008 20:46:33 GMT</pubDate>
            <wfw:comment>http://vidmar.net/weblog/comments/4595.aspx</wfw:comment>
            <comments>http://vidmar.net/weblog/archive/2008/04/14/printing-pdf-documents-in-c.aspx#feedback</comments>
            <slash:comments>6</slash:comments>
            <wfw:commentRss>http://vidmar.net/weblog/comments/commentRss/4595.aspx</wfw:commentRss>
        </item>
        <item>
            <title>wapgUI</title>
            <link>http://vidmar.net/weblog/archive/2008/04/12/wapgui.aspx</link>
            <description>&lt;p&gt;I often create account (&lt;a href="http://www.atlassian.com/software/jira/" target="_blank"&gt;Jira&lt;/a&gt;, &lt;a href="http://www.google.com/custom?domains=vidmar.net&amp;amp;q=svn&amp;amp;sitesearch=vidmar.net&amp;amp;sa=Search&amp;amp;client=pub-5686862836711088&amp;amp;forid=1&amp;amp;channel=9047512506&amp;amp;ie=ISO-8859-1&amp;amp;oe=ISO-8859-1&amp;amp;cof=GALT%3A%23008000%3BGL%3A1%3BDIV%3A%23336699%3BVLC%3A663399%3BAH%3Acenter%3BBGC%3AFFFFFF%3BLBGC%3A336699%3BALC%3A0000FF%3BLC%3A0000FF%3BT%3A000000%3BGFNT%3A0000FF%3BGIMP%3A0000FF%3BFORID%3A1&amp;amp;hl=en" target="_blank"&gt;Subversion&lt;/a&gt;, FTP,...) so I need good password generator. For long time I used &lt;a href="http://www.pctools.com/guides/password/" target="_blank"&gt;PC Tools Secure Password Generator&lt;/a&gt; web page with &lt;a href="http://www.pctools.com/guides/password/?length=13&amp;amp;phonetic=on&amp;amp;alpha=on&amp;amp;mixedcase=on&amp;amp;numeric=on&amp;amp;punctuation=on&amp;amp;nosimilar=on&amp;amp;quantity=10&amp;amp;generate=true" target="_blank"&gt;two&lt;/a&gt; &lt;a href="http://www.pctools.com/guides/password/?length=8&amp;amp;phonetic=on&amp;amp;alpha=on&amp;amp;mixedcase=on&amp;amp;numeric=on&amp;amp;nosimilar=on&amp;amp;quantity=10&amp;amp;generate=true" target="_blank"&gt;presets&lt;/a&gt; and it worked. Except there was a lot of copy-pasting.&lt;/p&gt; &lt;p&gt;Lately I try to simplify my life so I had a "what if I could just..." moment and that instance the &lt;strong&gt;&lt;a href="http://vidmar.net/wapgUI" target="_blank"&gt;wapgUI&lt;/a&gt;&lt;/strong&gt; was born.&lt;/p&gt; &lt;p&gt;It's a user interface for an ancient &lt;a href="http://dictionary.reference.com/search?r=2&amp;amp;q=pronounceable" target="_blank"&gt;pronounceable&lt;/a&gt; password generator called &lt;a href="http://www.adel.nursat.kz/apg/index.shtml" target="_blank"&gt;APG&lt;/a&gt;, or in the case of Win32 port &lt;a href="http://www.adel.nursat.kz/apg/download.shtml" target="_blank"&gt;wapg&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;&lt;a href="http://vidmar.net/weblog/images/vidmar_net/weblog/WindowsLiveWriter/wapgUI1.0_8A94/image_6.png"&gt;&lt;img border="0" alt="image" src="http://vidmar.net/weblog/images/vidmar_net/weblog/WindowsLiveWriter/wapgUI1.0_8A94/image_thumb_2.png" width="520" height="277" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Using &lt;a href="http://www.autohotkey.com/" target="_blank"&gt;AutoHotKey&lt;/a&gt; I can now press Win + S to start &lt;a href="http://vidmar.net/wapgUI" target="_blank"&gt;&lt;strong&gt;wapgUI&lt;/strong&gt;&lt;/a&gt; which will display a list of 10 freshly generated passwords. I pick one (using enter or double click) and the password is copied on the clipboard for instant pasting where new password is needed.&lt;/p&gt; &lt;p&gt;Here is the AHK script I use for launching:&lt;/p&gt; &lt;p&gt;&lt;font size="2" face="cons"&gt;&amp;lt;#S::&lt;br /&gt;    SetTitleMatchMode, 2&lt;br /&gt;    IfWinExist, wapgUI&lt;br /&gt;    {&lt;br /&gt;        WinActivate&lt;br /&gt;    }&lt;br /&gt;    Else&lt;br /&gt;    {&lt;br /&gt;        Run, C:\Shared Folder\Tools\wapgUI\wapgUI.exe&lt;br /&gt;        WinWait, wapgUI&lt;br /&gt;        WinActivate &lt;br /&gt;    }&lt;br /&gt;    Return&lt;/font&gt;  &lt;/p&gt;&lt;p&gt;The password strength, length and allowed characters parameters for wapg can be set in wapgUI.exe.file.&lt;/p&gt; &lt;p&gt;&lt;em&gt;Includes &lt;/em&gt;&lt;a href="http://www.adel.nursat.kz/apg/index.shtml" target="_blank"&gt;&lt;em&gt;wapg binaries by Adel I. Mirzazhanov&lt;/em&gt;&lt;/a&gt;&lt;em&gt; and &lt;/em&gt;&lt;a href="http://www.famfamfam.com/lab/icons/silk/" target="_blank"&gt;&lt;em&gt;famfamfam silk icon&lt;/em&gt;&lt;/a&gt;&lt;em&gt;.&lt;/em&gt;&lt;/p&gt; &lt;p&gt;&lt;em&gt;&lt;/em&gt; &lt;/p&gt; &lt;p&gt;&lt;strong&gt;Download: &lt;br /&gt;&lt;/strong&gt;&lt;a href="http://vidmar.net/download/wapgUI_10.zip" target="_blank"&gt;wapgUI 1.0 (with wapg.exe)&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Source code: &lt;br /&gt;&lt;/strong&gt;&lt;a href="http://vidmar.net/download/wapgUI_10_SourceCode.zip" target="_blank"&gt;wapgUI 1.0 VS 2008 C# source code&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;History:&lt;br /&gt;&lt;/strong&gt;1.0 (12th April 2008) - Initial release.&lt;/p&gt; &lt;p&gt; &lt;/p&gt; &lt;div style="padding-right: 0px; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px; display: inline" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:5dbd9e23-ed74-449e-8bcd-a386288dd4a3" class="wlWriterSmartContent"&gt;Technorati tags: &lt;a href="http://technorati.com/tags/password%20generation" rel="tag"&gt;password generation&lt;/a&gt;, &lt;a href="http://technorati.com/tags/wapg" rel="tag"&gt;wapg&lt;/a&gt;, &lt;a href="http://technorati.com/tags/apg" rel="tag"&gt;apg&lt;/a&gt;, &lt;a href="http://technorati.com/tags/UI" rel="tag"&gt;UI&lt;/a&gt;, &lt;a href="http://technorati.com/tags/GUI" rel="tag"&gt;GUI&lt;/a&gt;, &lt;a href="http://technorati.com/tags/security" rel="tag"&gt;security&lt;/a&gt;, &lt;a href="http://technorati.com/tags/utility" rel="tag"&gt;utility&lt;/a&gt;&lt;/div&gt;&lt;img src="http://vidmar.net/weblog/aggbug/4593.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>David Vidmar</dc:creator>
            <guid>http://vidmar.net/weblog/archive/2008/04/12/wapgui.aspx</guid>
            <pubDate>Sat, 12 Apr 2008 20:42:26 GMT</pubDate>
            <wfw:comment>http://vidmar.net/weblog/comments/4593.aspx</wfw:comment>
            <comments>http://vidmar.net/weblog/archive/2008/04/12/wapgui.aspx#feedback</comments>
            <wfw:commentRss>http://vidmar.net/weblog/comments/commentRss/4593.aspx</wfw:commentRss>
        </item>
        <item>
            <title>[Book] LINQ in Action</title>
            <link>http://vidmar.net/weblog/archive/2008/03/24/book-linq-in-action.aspx</link>
            <description>&lt;p&gt;&lt;iframe style="width: 120px; height: 240px" align="right" marginwidth="0" marginheight="0" src="http://rcm.amazon.com/e/cm?t=softwaredev0e-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=1933988169&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" frameborder="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p&gt;It's been a while since I &lt;a href="http://vidmar.net/weblog/category/23.aspx" target="_blank"&gt;reviewed a book on this blog&lt;/a&gt;. It's also been a while since I last read through a technical/software development book and wanted everyone know what I think about it. Last week I picked up a copy of &lt;a href="http://www.amazon.com/gp/product/1933988169?ie=UTF8&amp;amp;tag=softwaredev0e-20&amp;amp;linkCode=as2&amp;amp;camp=1789&amp;amp;creative=9325&amp;amp;creativeASIN=1933988169" target="_blank"&gt;&lt;strong&gt;LINQ in Action&lt;/strong&gt;&lt;/a&gt; for my work and for three snowy morning I flipped pages. &lt;/p&gt;  &lt;p&gt;When I first started reading about LINQ and playing with it I got a feeling LINQ is HUGE. That regular developer that doesn't have a lot of time to learn will need years to conquer the art of all that is LINQ. &lt;/p&gt;  &lt;p&gt;But after reading LINQ in Action I realized this is not the case. The book systematically explains LINQ and since you probably already know something about LINQ fills the gaps. It's fast to red, has a nice flow. First it covers the basics, then explains about LINQ Objects, followed by LINQ to SQL and LINQ to XML and closes with a nice wrap-up. On books homepage you will find &lt;a href="http://www.manning-source.com/books/marguerie/bonusch14.pdf" target="_blank"&gt;extra chapter dealing with LINQ to DataSet&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;What I missed in the book is more about using LINQ in three-tiered designs. There are just a few statements about this in the book and &lt;a href="http://linqinaction.net/files/folders/linqinaction/entry1952.aspx" target="_blank"&gt;few lines in sample code&lt;/a&gt;. What I would like to see is a chapter on how to use LINQ when there is WCF service in application design. I know it's a painful subject, but some guidelines would still be nice.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;More info:&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://www.linqinaction.net" target="_blank"&gt;Book's homepage&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://linqinaction.net/files/folders/linqinaction/entry1952.aspx" target="_blank"&gt;Sample code&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://www.manning-source.com/books/marguerie/bonusch14.pdf" target="_blank"&gt;Bonus chapter 14 - Working with LINQ and DataSets&lt;/a&gt; &lt;em&gt;(update: direct links to PDF don't work. Visit home page and access them from there)&lt;/em&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://www.manning-source.com/books/marguerie/samplech1.pdf" target="_blank"&gt;Sample chapter 1&lt;/a&gt; and &lt;a href="http://www.manning-source.com/books/marguerie/samplech3.pdf" target="_blank"&gt;chapter 3&lt;/a&gt; &lt;em&gt;(update: direct links to PDF don't work. Visit home page and access them from there)&lt;/em&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://www.amazon.com/gp/product/1933988169?ie=UTF8&amp;amp;tag=softwaredev0e-20&amp;amp;linkCode=as2&amp;amp;camp=1789&amp;amp;creative=9325&amp;amp;creativeASIN=1933988169" target="_blank"&gt;Buy on Amazon.com&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://www.amazon.de/Linq-Action-Fabrice-Marguerie/dp/1933988169/ref=pd_bbs_sr_1?ie=UTF8&amp;amp;s=books-intl-de&amp;amp;qid=1206359592&amp;amp;sr=8-1" target="_blank"&gt;Buy on Amazon.de&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt; &lt;/p&gt;  &lt;div class="wlWriterSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:1a51f35c-2dcf-413a-b37b-f6a8a5544b77" style="padding-right: 0px; display: inline; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;Technorati tags: &lt;a href="http://technorati.com/tags/books" rel="tag"&gt;books&lt;/a&gt;, &lt;a href="http://technorati.com/tags/linq" rel="tag"&gt;linq&lt;/a&gt;, &lt;a href="http://technorati.com/tags/linq%20in%20action" rel="tag"&gt;linq in action&lt;/a&gt;&lt;/div&gt;&lt;img src="http://vidmar.net/weblog/aggbug/4589.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>David Vidmar</dc:creator>
            <guid>http://vidmar.net/weblog/archive/2008/03/24/book-linq-in-action.aspx</guid>
            <pubDate>Mon, 24 Mar 2008 11:53:43 GMT</pubDate>
            <wfw:comment>http://vidmar.net/weblog/comments/4589.aspx</wfw:comment>
            <comments>http://vidmar.net/weblog/archive/2008/03/24/book-linq-in-action.aspx#feedback</comments>
            <slash:comments>3</slash:comments>
            <wfw:commentRss>http://vidmar.net/weblog/comments/commentRss/4589.aspx</wfw:commentRss>
        </item>
    </channel>
</rss>