<?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"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Omaha Python Users Group</title>
	<atom:link href="http://www.omahapython.org/blog/feed" rel="self" type="application/rss+xml" />
	<link>http://www.omahapython.org/blog</link>
	<description>Python Users in the Omaha Metro Area</description>
	<lastBuildDate>Tue, 20 Dec 2011 00:00:09 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Omaha Python User Group Meeting December, 2011</title>
		<link>http://www.omahapython.org/blog/archives/228</link>
		<comments>http://www.omahapython.org/blog/archives/228#comments</comments>
		<pubDate>Tue, 20 Dec 2011 00:00:09 +0000</pubDate>
		<dc:creator>Steve</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.omahapython.org/blog/?p=228</guid>
		<description><![CDATA[Meeting is canceled for Christmas.  See you next month.]]></description>
			<content:encoded><![CDATA[<p>Meeting is canceled for Christmas.  See you next month.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.omahapython.org/blog/archives/228/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Omaha Python Users Group Meeting, Nov 21, 2011</title>
		<link>http://www.omahapython.org/blog/archives/215</link>
		<comments>http://www.omahapython.org/blog/archives/215#comments</comments>
		<pubDate>Tue, 22 Nov 2011 13:56:37 +0000</pubDate>
		<dc:creator>JeffH</dc:creator>
				<category><![CDATA[code]]></category>
		<category><![CDATA[MeetingNotes]]></category>
		<category><![CDATA[Snippets]]></category>

		<guid isPermaLink="false">http://www.omahapython.org/blog/?p=215</guid>
		<description><![CDATA[Tonight&#8217;s Meeting Topics: Django Django and RESTful interfaces via Piston and XML-RPC Message Queuing &#8211; specifically RabbitMQ, ActiveMQ and STOMP and the 5 primary usage patterns.  And integrating MQs in Django with Celery. We also had a &#8220;follow me&#8221; presentation on getting started with Selenium2&#8216;s webdriver.  The following are my notes on the presentation: -- Selenium2 -- [...]]]></description>
			<content:encoded><![CDATA[<p>Tonight&#8217;s Meeting Topics:</p>
<ul>
<li><a href="https://www.djangoproject.com/" target="_blank">Django</a></li>
<li>Django and RESTful interfaces via <a href="https://bitbucket.org/jespern/django-piston/wiki/Home" target="_blank">Piston</a> and <a href="https://launchpad.net/django-xmlrpc" target="_blank">XML-RPC</a></li>
<li>Message Queuing &#8211; specifically <a href="http://www.rabbitmq.com/" target="_blank">RabbitMQ</a>, <a href="http://activemq.apache.org/" target="_blank">ActiveMQ</a> and <a href="http://stomp.github.com/" target="_blank">STOMP</a> and the 5 primary <a href="http://www.rabbitmq.com/getstarted.html" target="_blank">usage patterns</a>.  And integrating MQs in Django with <a href="http://celeryproject.org/" target="_blank">Celery</a>.</li>
<li>We also had a &#8220;follow me&#8221; presentation on getting started with <a href="http://seleniumhq.org/" target="_blank">Selenium2</a>&#8216;s <a href="http://seleniumhq.org/docs/03_webdriver.html" target="_blank">webdriver</a>.  The following are my notes on the presentation:</li>
</ul>
<pre>-- Selenium2 --

Selenium RC vs Webdriver -
Selenium - http://seleniumhq.org/
         - http://seleniumhq.org/docs/03_webdriver.html
Why - http://seleniumhq.org/docs/appendix_migrating_from_rc_to_webdriver.html

Firefox, Chrome, Ie, iOS, Android, Opera

-- Setting up an environment --
  virtualenv --no-site-packages Se-Pres(entation)
  cd Se-Pres
  source bin/activate
  easy_install selenium
Now fire up an interpreter:
  python
  from selenium import webdriver
  b = webdriver.Firefox()
  b.get('http://www.google.com/')
  b.page_source
  dir(b)
  b.name
  b.get_cookies()   (a list of dicts, each containing a cookie and support info)
  b.current_url

&gt;&gt;&gt; b.find_element_by_name('q')
&lt;selenium.webdriver.remote.webelement.WebElement object at 0x874b22c&gt;
&gt;&gt;&gt; sbx = b.find_element_by_name('q')
&gt;&gt;&gt; sbx.send_keys('omaha python')
&gt;&gt;&gt; sbx.submit()
&gt;&gt;&gt; b.title
u'omaha python - Google Search'

  b.find_element_by_name('foo')
selenium.common.exceptions.NoSuchElementException

-- Other Helpful things --
unittest - http://docs.python.org/library/unittest.html#
nose - http://readthedocs.org/docs/nose/en/latest/

nose-testconfig - http://pypi.python.org/pypi/nose-testconfig/</pre>
<p>The meeting concluded about 9pm when the venue closed but we continued with a 15 minute parking lot track that included references to <a href="http://www.amazon.com/Code-Complete-Practical-Handbook-Construction/dp/0735619670">Code Complete</a> and general development concepts.  Great Meeting! and everyone is looking forward to the next.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.omahapython.org/blog/archives/215/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Omaha Python Users Group Meeting, July 18, 2011</title>
		<link>http://www.omahapython.org/blog/archives/206</link>
		<comments>http://www.omahapython.org/blog/archives/206#comments</comments>
		<pubDate>Tue, 19 Jul 2011 00:52:55 +0000</pubDate>
		<dc:creator>JeffH</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.omahapython.org/blog/?p=206</guid>
		<description><![CDATA[Tonight’s Meeting:]]></description>
			<content:encoded><![CDATA[<p>Tonight’s Meeting:</p>
]]></content:encoded>
			<wfw:commentRss>http://www.omahapython.org/blog/archives/206/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Omaha Python Users Group Meeting, June 20, 2011</title>
		<link>http://www.omahapython.org/blog/archives/207</link>
		<comments>http://www.omahapython.org/blog/archives/207#comments</comments>
		<pubDate>Tue, 21 Jun 2011 00:47:49 +0000</pubDate>
		<dc:creator>JeffH</dc:creator>
				<category><![CDATA[info]]></category>
		<category><![CDATA[MeetingNotes]]></category>

		<guid isPermaLink="false">http://www.omahapython.org/blog/?p=207</guid>
		<description><![CDATA[Tonight&#8217;s Meeting: Joe talked about the 2 semester course he attended at Iowa Western on Linux Engineering. Steve talked about Code Like a Pythonista, by David Goodger.  He thinks it is a great resource.  I agree with him. (So much I did a presentation on David&#8217;s material back in 2008).  Steve also liked the Python [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Tonight&#8217;s Meeting</strong>:</p>
<p>Joe talked about the 2 semester course he attended at Iowa Western on Linux Engineering.</p>
<p>Steve talked about <a href="http://python.net/~goodger/projects/pycon/2007/idiomatic/handout.html">Code Like a Pythonista</a>, by David Goodger.  He thinks it is a great resource.  I agree with him. (So much I did a presentation on David&#8217;s material <a href="http://www.omahapython.org/IdiomaticPython.html">back in 2008</a>).  Steve also liked the <a href="http://www.pythonchallenge.com/">Python Challenge</a>.  He has made it though the first 5 or 6 so far and hopes to make it all the way through.</p>
<p>Joe brought up the fact that <a href="http://fullcirclemagazine.org/">Full Circle Magazine</a> &#8211; has released two specific Python issues, <a href="http://fullcirclemagazine.org/2011/03/05/its-here-the-python-special-edition-01/">Issue 1</a> and <a href="http://fullcirclemagazine.org/python-special-edition-2/">Issue 2</a>.</p>
<p>Jeff brought a Code editor that he likes, <a href="http://editra.org/">Editra</a>.  It is a very nice, rapidly advancing development environment.  If you are in the market you should take a look if Komodo or PyCharm are turning your head.</p>
<p>A non-python, learn how to program environment is MIT&#8217;s <a href="http://scratch.mit.edu/">Scratch</a>.  Joe likes <a href="http://www.briggs.net.nz/log/writing/snake-wrangling-for-kids/">Snake Wrangling for Kids</a>.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.omahapython.org/blog/archives/207/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Omaha Python Users Group Meeting, April 18, 2011</title>
		<link>http://www.omahapython.org/blog/archives/201</link>
		<comments>http://www.omahapython.org/blog/archives/201#comments</comments>
		<pubDate>Tue, 19 Apr 2011 02:02:14 +0000</pubDate>
		<dc:creator>JeffH</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.omahapython.org/blog/?p=201</guid>
		<description><![CDATA[Tonight&#8217;s meeting: Steve talked about the book he just read, &#8220;Start Small, Stay Small&#8220;.  The premise is fast is good.   Jeff talked about the book he was reading, &#8220;Programming Collective Intelligence&#8221;.  Conversations then turned to SQL, and good resources.   It was pointed out there are a number of really good references on the [...]]]></description>
			<content:encoded><![CDATA[<p>Tonight&#8217;s meeting:</p>
<p>Steve talked about the book he just read, &#8220;<a href="http://www.amazon.com/Start-Small-Stay-Developers-Launching/dp/0615373968/ref=sr_1_1?ie=UTF8&amp;qid=1303171806&amp;sr=8-1">Start Small, Stay Small</a>&#8220;.  The premise is fast is good.   Jeff talked about the book he was reading, &#8220;Programming Collective Intelligence&#8221;.  Conversations then turned to SQL, and good resources.   It was pointed out there are a number of really good references on the web and that it is probably best to just do it, keeping in mind that every table needs a primary key and to never depend on the user to give you information that you would use as part of the primary key without checking.</p>
<p>Jeff was motivated by the PyCon video, &#8220;<a href="http://pycon.blip.tv/file/4880794/">Python and Robots: Teaching programming in High School</a>&#8220;.  He actually went out and got an S2 and Fluke board and is now actively teaching his kids how to program robots in Python.</p>
<p>More talk about the results from the survey were discussed.  Focusing on &#8220;events&#8221; and moving away from traditional &#8220;user group&#8221; seemed to be popular and something we want to move forward and try.</p>
<p>&nbsp;</p>
<p>Next &#8220;Event&#8221; is in May &#8212; See you then.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.omahapython.org/blog/archives/201/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Omaha Python Users Group Meeting, March 21, 2011</title>
		<link>http://www.omahapython.org/blog/archives/196</link>
		<comments>http://www.omahapython.org/blog/archives/196#comments</comments>
		<pubDate>Tue, 19 Apr 2011 00:07:39 +0000</pubDate>
		<dc:creator>JeffH</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.omahapython.org/blog/?p=196</guid>
		<description><![CDATA[Talked about pycon videos on blip, some of the videos mentioned were: &#160; Results from Surveys discussions - More timely  notifications for the meetings.  A 2week/1week pattern and a 1week pattern were discussed. Coding by example is one of the most requested topics.  However, we need steady access to a projector to make that work. [...]]]></description>
			<content:encoded><![CDATA[<p>Talked about <a href="pycon.blip.tv" target="_blank">pycon videos on blip</a>, some of the videos mentioned were:</p>
<p>&nbsp;</p>
<p>Results from Surveys discussions -</p>
<ul>
<li>More timely  notifications for the meetings.  A 2week/1week pattern and a 1week pattern were discussed.</li>
<li>Coding by example is one of the most requested topics.  However, we need steady access to a projector to make that work.</li>
<li>Vary content over the meeting from Beginner to Advanced</li>
<li>Win lottery and split proceeds with others interested in Python, then they can retire and have time to attend.</li>
<li>Noticed lots of Python envy from perl coders.  (Can&#8217;t we all just get along?)</li>
<li>Lansky&#8217;s has as many benefits as negatives.  We are game for any venue with more pluses &#8212; Looking for ideas and offers.</li>
<li>Usage (most to least): WEB, SysAdmin, DataBase, Desktop, Other, Games, CompSci, Hobby, Academic, Mobile, Robotics, Scientific
<ul>
<li>Other includes: rapid security tool dev</li>
</ul>
</li>
<li>how many times have you attended: 46% &#8211; Never, 30% 1-10, 15% 24, 8% &#8211; &gt;24</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.omahapython.org/blog/archives/196/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Omaha Python Users Group Meeting, Feb 21, 2011</title>
		<link>http://www.omahapython.org/blog/archives/178</link>
		<comments>http://www.omahapython.org/blog/archives/178#comments</comments>
		<pubDate>Tue, 22 Feb 2011 00:55:11 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA[MeetingNotes]]></category>

		<guid isPermaLink="false">http://www.omahapython.org/blog/?p=178</guid>
		<description><![CDATA[The users group is meeting tonight at Lansky&#8217;s as normal. Review Steve&#8217;s Survey for the group. Here is our survey, created at the meeting.  We will be emailing it to the group.  Please participate by taking the survey, your thoughts and comments are important. We plugged the lunch meet-up with the focus on working together building [...]]]></description>
			<content:encoded><![CDATA[<p>The users group is meeting tonight at Lansky&#8217;s as normal.</p>
<ul>
<li>Review Steve&#8217;s <a href="http://mail.python.org/pipermail/omaha/2011-January/000785.html" target="_blank">Survey for the group</a>.</li>
<li>Here is<a href="http://www.surveymonkey.com/s/K9KTGLC" target="_blank"> our survey</a>, created at the meeting.  We will be emailing it to the group.  Please participate by taking the survey, your thoughts and comments are important.</li>
<li>We plugged the lunch meet-up with the focus on working together building interesting python apps championed by Steve</li>
</ul>
<p>More details to follow.</p>
<p>Other Notes:  We updated wordpress so if you notice any glitches please let us know.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.omahapython.org/blog/archives/178/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Omaha Python Meeting, Feb 17, 2011</title>
		<link>http://www.omahapython.org/blog/archives/191</link>
		<comments>http://www.omahapython.org/blog/archives/191#comments</comments>
		<pubDate>Sat, 22 Jan 2011 03:27:12 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.omahapython.org/blog/?p=191</guid>
		<description><![CDATA[We met at Lansky&#8217;s @ 7pm. Meeting notes to be added.]]></description>
			<content:encoded><![CDATA[<p>We met at Lansky&#8217;s @ 7pm.</p>
<p>Meeting notes to be added.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.omahapython.org/blog/archives/191/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>November 15, 2010 Meeting Notes</title>
		<link>http://www.omahapython.org/blog/archives/182</link>
		<comments>http://www.omahapython.org/blog/archives/182#comments</comments>
		<pubDate>Tue, 16 Nov 2010 02:00:30 +0000</pubDate>
		<dc:creator>Steve</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.omahapython.org/blog/?p=182</guid>
		<description><![CDATA[We continued our focus on testing tonight looking at TDD, BDD, unittest, nose, freshen and lettuce.  BDD is TDD with a little different syntax aiming to make building the tests more natural.  Freshen and lettuce were inspired by a Rails project call Cucumber, which has some good documents on how BDD works. We discussed the [...]]]></description>
			<content:encoded><![CDATA[<p>We continued our focus on testing tonight looking at TDD, <a href="http://blog.dannorth.net/introducing-bdd/" target="_blank">BDD</a>, <a href="http://docs.python.org/library/unittest.html" target="_blank">unittest</a>, <a href="http://code.google.com/p/python-nose/" target="_blank">nose</a>, <a href="https://github.com/rlisagor/freshen" target="_blank">freshen </a>and <a href="http://packages.python.org/lettuce/tutorial/simple.html" target="_blank">lettuce</a>.  BDD is TDD with a little different syntax aiming to make building the tests more natural.  Freshen and lettuce were inspired by a Rails project call <a href="http://cukes.info/" target="_blank">Cucumber</a>, which has some good documents on how BDD works.</p>
<p>We discussed the possibility of starting a lunch meet-up to sharpen our skills by building a fun project.  From the topics of the night Jeff suggested creating Conway&#8217;s Game of Life and have it tweet updates.  Please chime in on the email list if you are interested or have suggestions.</p>
<p>A few of the projects discussed were:</p>
<ul>
<li> how to create a lot of tweets and schedule them to be sent at certain times or intervals.</li>
<li>how to sync Facebook and Twitter updates</li>
<li><a href="http://curl.haxx.se/" target="_blank">cURL </a>- command line tool to transfer data with url syntax</li>
</ul>
<p>I failed to take notes so please add to the comments for what I forgot!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.omahapython.org/blog/archives/182/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>October 18, 2010 Meeting Notes</title>
		<link>http://www.omahapython.org/blog/archives/175</link>
		<comments>http://www.omahapython.org/blog/archives/175#comments</comments>
		<pubDate>Tue, 19 Oct 2010 16:22:46 +0000</pubDate>
		<dc:creator>Steve</dc:creator>
				<category><![CDATA[MeetingNotes]]></category>

		<guid isPermaLink="false">http://www.omahapython.org/blog/?p=175</guid>
		<description><![CDATA[The attendees of tonight&#8217;s meeting had been working with Django and the talks centered around some cool features and extensions. django-command-extensions &#8211; &#8220;This is a repository for collecting global custom management extensions for the Django Framework.&#8221;  Of particular interest was the graph_models model which creates a GraphVis dot file (or an image) of your models.  [...]]]></description>
			<content:encoded><![CDATA[<p>The attendees of tonight&#8217;s meeting had been working with Django and the talks centered around some cool features and extensions.</p>
<ul>
<li><strong><a href="http://code.google.com/p/django-command-extensions/" target="_blank">django-command-extensions</a></strong> &#8211; &#8220;This is a repository for collecting global custom management extensions for the Django Framework.&#8221;  Of particular interest was the <a href="http://code.google.com/p/django-command-extensions/wiki/GraphModels" target="_blank">graph_models</a> model which creates a GraphVis dot file (or an image) of your models.  You can specify the whole project or specific apps.  The code is <a href="http://github.com/django-extensions/django-extensions" target="_blank">here</a>.</li>
<li><strong>&#8220;<a href="http://docs.djangoproject.com/en/1.2/ref/contrib/databrowse/" target="_blank">Databrowse </a></strong>is a Django application that lets you browse your data.  Databrowse dynamically creates a rich, browsable Web site by introspecting your models.&#8221;  This comes free with Django, and is similar to the admin interface, with the ability to click links to related tables to follow how the data is connected.</li>
<li>We were discussing how to easily get test data into the Django models when building a project and needing to build, test, tear down, build, test&#8230; and came up with two items:
<ul>
<li>When your model is not changing much, Django comes with <strong><a href="http://www.djangoproject.com/documentation/models/fixtures/" target="_blank">Fixtures</a></strong>.  &#8220;Fixtures are a way of loading data into the database in bulk. Fixture data can be stored in any serializable format (including JSON and XML).&#8221;</li>
<li>When you are just beginning and have a sample set of data, and need to build a model, test it, throw it away, create another model, and loading the data each time, Jeff suggested using the &#8220;<a href="http://docs.djangoproject.com/en/1.2/howto/custom-management-commands/" target="_blank">writing custom django-admin commands</a>&#8221; feature to write your own Django manage.py code.  Then you only have to tweak this to fit the new model and run to import.  This gives a place to put code when it doesn&#8217;t belong in the finished app.</li>
</ul>
</li>
<li><a href="http://hginit.com/" target="_blank">Mercurial </a>was suggested as a nice start to version control, especially for Windows users.  Jeff explained how committing small updates and documenting them helps in several ways:
<ul>
<li>when a bug is noticed after several changes it is easy to unload each change and test to see where the problem is.</li>
<li>you can try something &#8220;crazy&#8221; without much worry because it will be easy to revert to the previous version.</li>
<li>easier to build and test changes before submitting them to a live project.</li>
</ul>
</li>
</ul>
<p>Panera&#8217;s had good food and outlets near tables, but this particular location is pretty loud, not a good choice for the future in my opinion&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.omahapython.org/blog/archives/175/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

