Much of this meeting was spent getting to know Eric, who recently moved to Omaha, and is an enthusiastic Python’er. Discussion revolved around Eric’s database generator project and my flashcard website, so a lot of Django tips, and some internationalization was discussed. We ended up at Buffalo Wings and Rings again for some drinks and nachos – maybe this is becoming a tradition…
August 16, 2012
July 21, 2012
As usual the summer months have taken their toil on attendance, but it was nice getting to know Mike, and hopefully next month everyone will have the kids back in school and a little more time to get together.
Until next month, happy summer.
November 22, 2011
Tonight’s Meeting Topics:
- Django and RESTful interfaces via Piston and XML-RPC
- Message Queuing – specifically RabbitMQ, ActiveMQ and STOMP and the 5 primary usage patterns. And integrating MQs in Django with Celery.
- We also had a “follow me” presentation on getting started with Selenium2‘s webdriver. The following are my notes on the presentation:
-- 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 >>> b.find_element_by_name('q') <selenium.webdriver.remote.webelement.WebElement object at 0x874b22c> >>> sbx = b.find_element_by_name('q') >>> sbx.send_keys('omaha python') >>> sbx.submit() >>> 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/
The meeting concluded about 9pm when the venue closed but we continued with a 15 minute parking lot track that included references to Code Complete and general development concepts. Great Meeting! and everyone is looking forward to the next.
June 20, 2011
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’s material back in 2008). Steve also liked the Python Challenge. He has made it though the first 5 or 6 so far and hopes to make it all the way through.
Jeff brought a Code editor that he likes, Editra. 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.
February 21, 2011
The users group is meeting tonight at Lansky’s as normal.
- Review Steve’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 interesting python apps championed by Steve
More details to follow.
Other Notes: We updated wordpress so if you notice any glitches please let us know.
October 19, 2010
The attendees of tonight’s meeting had been working with Django and the talks centered around some cool features and extensions.
- django-command-extensions – “This is a repository for collecting global custom management extensions for the Django Framework.” Of particular interest was the graph_models 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 here.
- “Databrowse is a Django application that lets you browse your data. Databrowse dynamically creates a rich, browsable Web site by introspecting your models.” 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.
- 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… and came up with two items:
- When your model is not changing much, Django comes with Fixtures. “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).”
- 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 “writing custom django-admin commands” 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’t belong in the finished app.
- Mercurial 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:
- when a bug is noticed after several changes it is easy to unload each change and test to see where the problem is.
- you can try something “crazy” without much worry because it will be easy to revert to the previous version.
- easier to build and test changes before submitting them to a live project.
Panera’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…
September 21, 2010
Our regular location was booked for this month’s meeting, so at the last minute we tried to find a web conference solution. Our first choice did not work well, and we moved over to another service. I apologize to anyone who tried to join the meeting and got lost in the shuffle. Thanks to Jeff and Jay for going thru the pains of figuring out the details and getting mics working well. We will find a good solution before next month’s meeting. We are hoping to give more people the opportunity to be involved and also have more guest presenters.
In spite of the difficulty, Jeff persisted with an introduction to testing in Python. He talked mainly about Python Koans, by Greg Malcom. From the website:
Python Koans is an interactive tutorial for learning Python by making tests pass.
Most tests are ‘fixed’ by filling the missing parts of assert functions. Eg:self.assertEqual(__, 1+2)
which can be fixed by replacing the __ part with the appropriate code:self.assertEqual(3, 1+2)
Occasionally you will encounter some failing tests that are already filled out. In these cases you will need to finish implementing some code to progress. For example, there is an exercise for writing some code that will tell you if a triangle is equilateral, isosceles or scalene.
As well as being a great way to learn some Python, it is also a good way to get a taste of Test Driven Development (TDD).
Jeff has been working on a couple of sections a day. (Joe – I thought that you might like this style of learning – I am going to try it myself.) There are versions for Python 2.6 and 3.1.
August 16, 2010
Small turnout but good discussion. Sean told me about Portable Python:
a Python® programming language preconfigured to run directly from any USB storage device, enabling you to have, at any time, a portable programming environment. Just download it, extract to your portable storage device or hard drive and in 10 minutes you are ready to create your next Python® application.
I wonder if it will run from Dropbox? Currently available with Python 2.5.4, 2.6.1, 3.0.1.
I did not take notes, but do remember also talking about CMS’s, and django CMS. It is at version 2 and in active development.
Just a reminder to use the mailing list for questions/comments/interesting Python news.
July 19, 2010
The meeting began with a roundup of several books and online courses for learning Python:
- Dive into Python and Dive into Python 3
- A Byte of Python – 2.x and 3.0
- How to Think Like a Computer Scientist
- Snake Wrangling for Kids
- MIT Video Lectures
- Crunchy - interactive Python tutorials served thru a web browser
Jeff led a twenty minute discussion of interesting items in Python 2.7, including
- Ordered Dictionary type
- Faster io module
- deprecation warnings disabled by default
We then had a brief introduction to Testing in Python and Jeff agreed to lead further discussion at the September meeting.
- Unittest - unit testing framework that ships with Python
- Nose , a unittest-based testing framework for Python that makes writing and running tests easier
- Two main reasons for testing were “Writing your code with testing in mind makes for better code” (or something like that), and I forget the other one…
- Selenium - a suite of tools to automate web app testing across many platforms. (not Python specific, but really cool)
The August meeting may be at a different location, so check before attending, or subscribe to the mail list.
June 21, 2010
We had a good discussion on ways to build web applications using Python. Most of the talk was on how django handles different aspects, but also included cherrypy, turbogears, mod_wsgi, and google closure tools.
The Python Package Index, PyPI, which now has 10,290 packages was lauded a bit, along with the easy_install method of adding packages with dependancies easily. Virtualenv was also mentioned as a way to build isolated Python environments on one machine.
The question: How to distribute Python programs? was brought up, and py2exe was mentioned, but none of the attendees had much else to say. Please comment if you have another idea.
Chad has found some programs that let you use Ubuntu to program your Harmony remote, and is considering building a gui in Python for them.
Other related and interesting items were also mentioned: