<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <title>Passing Curiosity: Posts tagged orm</title>
    <link href="https://passingcuriosity.com/tags/orm/orm.xml" rel="self" />
    <link href="https://passingcuriosity.com" />
    <id>https://passingcuriosity.com/tags/orm/orm.xml</id>
    <author>
        <name>Thomas Sutton</name>
        
        <email>me@thomas-sutton.id.au</email>
        
    </author>
    <updated>2013-06-24T00:00:00Z</updated>
    <entry>
    <title>Sydney Python User Group, June 2013</title>
    <link href="https://passingcuriosity.com/2013/sypy-june/" />
    <id>https://passingcuriosity.com/2013/sypy-june/</id>
    <published>2013-06-24T00:00:00Z</published>
    <updated>2013-06-24T00:00:00Z</updated>
    <summary type="html"><![CDATA[<h2 id="sqlalchemy">SQLAlchemy</h2>
<p>Database access library for SQL databases. Focusses on the database side of
things (rather than domain model). Just a nice simple SQL database access
layer. Supports lots of (SQL) databases and several Python runtimes.</p>
<p>While Django focusses on the database access needs for web applications,
SQLAlchemy is aimed on the broad range of database applications. This makes
SQLA harder to learn and far more flexible, exposing far more of the relation
model.</p>
<p>Layered architecture:</p>
<ul>
<li><p>Core provides and abstraction of Python’s DBAPI. Generates SQL in Python
code (EDSL?). Bulk operations, complex queries, etc.</p>
<ul>
<li><p>Schema handles DDL-type metadata.</p></li>
<li><p>Expressions handled DML-type operations. Dialects, pooling, etc.</p></li>
</ul></li>
<li><p>ORM</p></li>
</ul>
<p>Installing is easy:</p>
<pre><code> $ pip install sqlalchemy


 query = vehicals_table.select()
 print query
 &gt; SELECT vehicals.name
 &gt; FROM vehicls</code></pre>
<p>Query objects are mutable.</p>
<pre><code>query.where(vehicals_table.c.odometer &lt; 10000)</code></pre>
<h2 id="robot-framework">Robot Framework</h2>
<p>Yet another testing framework.</p>
<p>Framework for “aceptance testing and acceptance testing driven development”.
Developed by Nokia Siemens Networks, contributions by Google? Pretty old.</p>
<p>Yet another attempt to make things easy for non programmers by deleting all
the syntax (except the number of spaces between things, of <em>course</em> <strong>that’s</strong>
meaningful; how could anyone not see that?)</p>
<p>Keywords (just sequences of keywords which are defined elsewhere); libraries
of keywords.</p>
<p>Gherkin syntax for BDD (for people who think BDD and cucumber are related).</p>
<p>Generates reports in HTML format (plus XML). Includes screenshots when using
the Selenium library.</p>
<p>Library to add annotations to screenshots for use in documentation, etc.</p>
<h2 id="salt">Salt</h2>
<p>YAML, jinja and Python; all with significant white space.</p>
<p>Configuration management solutions should (in Daniel’s option) have:
visibility, repeatability, iterability.</p>]]></summary>
</entry>

</feed>
