A guest post by Garry Polley, a Python developer devoted to creating remarkable apps for the healthcare industry, and the creator of an online mathematics curriculum called GeckoMathematics. Education is a thriving passion for Garry and it's what he would do if he were not a developer.
In the Django community there has been a long running dispute since version 1.3 around class based views. I plan to give some insight into how you should use class based views. This is not an article aimed at function based views vs class based views.
Monday, October 28, 2013
Thursday, October 10, 2013
Getting started with Python
In the most recent issue of the Bulletin of the American Meteorological Society (BAMS), Johnny Lin (Python guru with a very useful ) wrote a great explaining why Python is the 'new wave' in earth sciences computing. It would be fair to say that this is a widely held view, particularly considering that the AMS has hosted an annual Python symposium for the last 3 years running. While nice features like the elegant syntax and open-source nature of Python have certainly contributed to its popularity, the main reason why Johnny Lin and others are so bullish about Python is the fact that you can do pretty much everything with it.
Consider this hypothetical workflow, typical of the weather/climate sciences:
Consider this hypothetical workflow, typical of the weather/climate sciences:
Monday, September 23, 2013
Cambridge
Based in Cambridge, this subsidiary of one of the largest international communications companies is seeking a Senior Python-Backend Software Engineer.The company is creating search engine technology for mapping/logistics.These global maps can be found in mobile phones, web companies and car navigation systems to aid in directions and discovery of locations and venues.
As a senior software engineer you will be working on the test infrastructure team to build internal tools using Python.The team will work closely with the Deployment team.As senior member of the team you will be expected to do about 85-90% hands-on development with Python and 10-15% leadership / mentoring responsibilities.This position is more Backend / Server focused.
As a senior software engineer you will be working on the test infrastructure team to build internal tools using Python.The team will work closely with the Deployment team.As senior member of the team you will be expected to do about 85-90% hands-on development with Python and 10-15% leadership / mentoring responsibilities.This position is more Backend / Server focused.
Monday, September 16, 2013
Mountain View/San Francisco
Our client, a leading real time business intelligence software company in Mountain View, is looking for a Senior UI Engineer to help completely redevelop their core web metrics product. This product supports all of their features and services. This person will bring a passion for building secure, highly scalable, reliable and high performance distributed systems. You will play a key role in building upon an exciting platform that delivers web and network monitoring solutions as well as load testing services.
This is a full time position and can pay up to $160K depending on experience/seniority. All candidate must be willing to work out of Mountain View for the next 9 months and then be open to working in San Francisco when they move offices.
This is a full time position and can pay up to $160K depending on experience/seniority. All candidate must be willing to work out of Mountain View for the next 9 months and then be open to working in San Francisco when they move offices.
Tuesday, August 27, 2013
Astropy: A Community Python Package for Astronomy
From the post:
The rapid adoption of Python by the astronomical community was starting to make it a victim of its own success, with fragmented development of Python packages across different groups. Thus began the project began in 2011, with an ambitious goal to coordinate Python development across various groups and simplify installation and usage for astronomers. These ambitious goals have been met and are summarized in the paper , prepared by the Astropy Collaboration. The webpage provides download and build instructions for the current release, version 0.2.4, and complete documentation. It is released under a "3-clause" BSD-type license - the package may be used for any purpose, as long as the copyright is acknowledged and warranty disclaimers are given.
The rapid adoption of Python by the astronomical community was starting to make it a victim of its own success, with fragmented development of Python packages across different groups. Thus began the project began in 2011, with an ambitious goal to coordinate Python development across various groups and simplify installation and usage for astronomers. These ambitious goals have been met and are summarized in the paper , prepared by the Astropy Collaboration. The webpage provides download and build instructions for the current release, version 0.2.4, and complete documentation. It is released under a "3-clause" BSD-type license - the package may be used for any purpose, as long as the copyright is acknowledged and warranty disclaimers are given.
Thursday, July 18, 2013
How to install Orange in Ubuntu 13.04
Orange, a released under the GNU General Public License, is a modular machine learning and data mining application developed at the Bioinformatics Laboratory, Faculty of Computer and Information Science, University of Ljubljana, Slovenia.
It is one of many Python applications that expert and aspiring data scientist may use to mess with data. Orange is cross-platform, but because there are no installation binaries for GNU/Linux distributions, installing it on your favorite distribution entails building it from source, which you can download from .
It is one of many Python applications that expert and aspiring data scientist may use to mess with data. Orange is cross-platform, but because there are no installation binaries for GNU/Linux distributions, installing it on your favorite distribution entails building it from source, which you can download from .
Wednesday, July 17, 2013
Best IDEs for Octave, Python and R
Code-wise, I've been getting my hands dirty with some digital grease over the past few months, and it's been fun. Most of the fun has resolved around learning Python, which appears to be the language of choice these days.
Python is almost a requirement everywhere you turn. Many introductory programming classes use Python as the main or default high-level programming language.
Python is almost a requirement everywhere you turn. Many introductory programming classes use Python as the main or default high-level programming language.
Tuesday, July 16, 2013
Here is a simple trick learned via Lifehacker. If you listen to audio books you
Finally and mp3 will be audio books in iTunes features MacKorisnik.com - magazine for Mac users
Here is a simple trick learned via Lifehacker. If you listen to audio books you've surely run into the problem
Here is a simple trick learned via Lifehacker. If you listen to audio books you've surely run into the problem
Sunday, July 7, 2013
The Outlaws of Sherwood by Robin McKinley
Goodreads: Source: Borrowed
Summary: Young Robin, the orphaned son of a forester, finds himself a reluctant outlaw after killing a man in self-defense. While he wants to hide unobtrusively in Sherwood forest, his friends seize upon the opportunity to make him a rallying point for the oppressed, over-taxed Saxons barely surviving under Norman rule. As the myth of Robin and his “merry band” grows, the men and women of Sherwood fight to survive and to do whatever good they can for the many Saxons who seek refuge in the forest.
Review: McKinley’s Robin is a reluctant legend. He never meant to kill the man whose death branded him an outlaw. He never wanted old friends – let alone strangers – to follow him into the forest. And he admits repeatedly that virtually every member of his band can shoot an arrow better than he can. He never actively seeks new members for his gang, but expends much time and energy trying to relocate the desperate men and women who seek him out. Essentially, the outlaws of Sherwood are running a covert social service organization for any Saxons plagued by unjust taxes, eviction, or arranged marriages. The funding for these services, of course, comes from unsuspecting rich Normans wandering through the forest.
This was a difficult story to become invested in, at first, especially since Robin himself is not the most interesting or developed character in the book. It became more likable halfway through, however, particularly with the arrival of a new character and the development of more action and excitement Robin was trying so hard to avoid.
One of the most notable features of this retelling is the generous inclusion of women. In fact, the female characters are some of the most well developed in the story. But while some girls might find this a reason to read this version of Robin Hood instead of another, the gender roles in this England might be a bit unbelievable for some, given the time period the story is set in. In this story, Marian is a perfect shot (much better than Robin is) and women fight not only alongside Robin as outlaws, but also alongside the king in the Holy Land. Random women also appear at archery contests, and make it to the last round before trained soldiers. These girls are all likable characters, however, so many readers may be able to forgive them their unusual skill with weapons.
In short, this is a fairly light and enjoyable introduction to Robin Hood, if not one of the most traditional tellings.
Published: 1988
- Full Post
Summary: Young Robin, the orphaned son of a forester, finds himself a reluctant outlaw after killing a man in self-defense. While he wants to hide unobtrusively in Sherwood forest, his friends seize upon the opportunity to make him a rallying point for the oppressed, over-taxed Saxons barely surviving under Norman rule. As the myth of Robin and his “merry band” grows, the men and women of Sherwood fight to survive and to do whatever good they can for the many Saxons who seek refuge in the forest.
Review: McKinley’s Robin is a reluctant legend. He never meant to kill the man whose death branded him an outlaw. He never wanted old friends – let alone strangers – to follow him into the forest. And he admits repeatedly that virtually every member of his band can shoot an arrow better than he can. He never actively seeks new members for his gang, but expends much time and energy trying to relocate the desperate men and women who seek him out. Essentially, the outlaws of Sherwood are running a covert social service organization for any Saxons plagued by unjust taxes, eviction, or arranged marriages. The funding for these services, of course, comes from unsuspecting rich Normans wandering through the forest.
This was a difficult story to become invested in, at first, especially since Robin himself is not the most interesting or developed character in the book. It became more likable halfway through, however, particularly with the arrival of a new character and the development of more action and excitement Robin was trying so hard to avoid.
One of the most notable features of this retelling is the generous inclusion of women. In fact, the female characters are some of the most well developed in the story. But while some girls might find this a reason to read this version of Robin Hood instead of another, the gender roles in this England might be a bit unbelievable for some, given the time period the story is set in. In this story, Marian is a perfect shot (much better than Robin is) and women fight not only alongside Robin as outlaws, but also alongside the king in the Holy Land. Random women also appear at archery contests, and make it to the last round before trained soldiers. These girls are all likable characters, however, so many readers may be able to forgive them their unusual skill with weapons.
In short, this is a fairly light and enjoyable introduction to Robin Hood, if not one of the most traditional tellings.
Published: 1988
- Full Post
Saturday, July 6, 2013
Plonified: Harvard SEAS hits Plone site trifecta
Over the next few weeks, we’ll be presenting bits on the recently launched Harvard School of Engineering and Applied Sciences , and faculty/lab subsite infrastructure based on Plone.
Harvard SEAS Public Website - New Site Design (2009)
After initially attending Plone developer training from Jazkarta, SEAS engaged Jazkarta’s professional services team on a larger site redesign project involving the following key facets:
A new information architecture and visual design that would increase awareness of research happening at the school.
A new intranet site that would offer the SEAS community easier access to important resources.
A scalable Plone software architecture that would…
Accommodate a shared authentication system.
Integrate with a centralized LDAP-based user directory.
Provide faculty and staff organization tools including directory listings and bios.
Aggregate and distribute news and events syndicated through other university systems.
Support multiple faculty/staff-managed “subsites” within a common infrastructure.
A soup-to-nuts implementation that would leverage Jazkarta’s expert team of designers and Plone developers.
Harvard SEAS Public Website - Original Design
You can get a more thorough background of the project via , an event hosted by SEAS and the .
We also presented a case study at (45 minute , via Penn State’s media streaming service). from this talk are shown below.
See the from this presentation.
In forthcoming posts, we’ll dig deeper into project requirements, project management techniques, and Plone best practices, including some exciting uses of emerging Plone technologies and community-provided extensions. For now, congratulations are in order to our friends in the SEAS Communications and Computing & IT groups. The SEAS team provided excellent leadership, content, and technology support during the project. Best of luck to SEAS with their new site!
Tagged: education, harvard, Plone - Full Post
Harvard SEAS Public Website - New Site Design (2009)
After initially attending Plone developer training from Jazkarta, SEAS engaged Jazkarta’s professional services team on a larger site redesign project involving the following key facets:
A new information architecture and visual design that would increase awareness of research happening at the school.
A new intranet site that would offer the SEAS community easier access to important resources.
A scalable Plone software architecture that would…
Accommodate a shared authentication system.
Integrate with a centralized LDAP-based user directory.
Provide faculty and staff organization tools including directory listings and bios.
Aggregate and distribute news and events syndicated through other university systems.
Support multiple faculty/staff-managed “subsites” within a common infrastructure.
A soup-to-nuts implementation that would leverage Jazkarta’s expert team of designers and Plone developers.
Harvard SEAS Public Website - Original Design
You can get a more thorough background of the project via , an event hosted by SEAS and the .
We also presented a case study at (45 minute , via Penn State’s media streaming service). from this talk are shown below.
See the from this presentation.
In forthcoming posts, we’ll dig deeper into project requirements, project management techniques, and Plone best practices, including some exciting uses of emerging Plone technologies and community-provided extensions. For now, congratulations are in order to our friends in the SEAS Communications and Computing & IT groups. The SEAS team provided excellent leadership, content, and technology support during the project. Best of luck to SEAS with their new site!
Tagged: education, harvard, Plone - Full Post
#9977: wxMSW
I am using the latest SVN version of wxWidgets compiled with Visual Studio 2008 on a Windows Vista x86. I also use SVN for one of my personal projects and TortoiseSVN (1.5.3 and older) as a client.
Once i create a Open File dialog Windows automatically loads all registered dlls in order to created Thumbnails for different file formats and other functionalities. The problem that i encounter is that once i close/destroy the Open File dialog all the dlls that were loaded with it close at a later time (separate threads) and TortoiseSVN switches the current directory back to the one in witch i was browsing with the Open File Dialog making all my relative paths invalid.
I was interested if there is any way to wait for the dialog to completely unload and continue the execution after.
- Full Post
#10040: wxGrid scrolls back to the previous edited field once
This bug is for Ubuntu 8.04.1
There is NO such bug when compiling and running on Windows XP.
It concerns all wxGrid I have created. You may use for example use the "grid" sample provided in the examples of the wxWidgets 2.8.9 distribution.
Edit one field.
Then scroll so that the first field is not in view anymore.
Now edit another field (the first field should still NOT be in view)
BUG: - The screen scrolls away from the second field and shows the first field!
CORRECT: - The screen should stay at the second field while you edit... - Full Post
#10378: Transparent wxSlider issue
Dear Sir/Madam,
I have tried wxMS_Developer forum, search google, tried many different approach, and I still can not figure out how to get wxSlider to show properly on top of an image background on windows PC. wxSlider works as expected in Mac OS X systems.
I will attach 2 pictures, one is captured from wxMac-2.8.9 which works fine, and one is captured from wxMSW-2.8.9 which does not work.
If you compare the 2 files, you will see that on wxMac-2.8.9.tiff:
1. There is no "grey" border surrounding the horizontal line where the slider is.
2. The numbers (200, 600, and 1000) are not surrounded by the "grey" border.
3. The number (1000) is not cut off like wxMSW does. wxMSW only show "000".
I use the same code in both wxMSW and wxMac.
For my frame's background image, here is the code I use:
void MyFrame::OnPaint(wxPaintEvent & e)
{
int width, height;
this->GetClientSize(&width, &height);
wxPaintDC dc(this);
wxBitmap scaledBitMap = wxBitmap(mMainScreenImage.Scale(width, height, wxIMAGE_QUALITY_NORMAL));
dc.DrawBitmap(scaledBitMap,0,0,true);
}
BEGIN_EVENT_TABLE(MyFrame, wxFrame)
EVT_PAINT(MyFrame::OnPaint)
END_EVENT_TABLE()
I use xrc file to describe the wxSlider as follow:
<object class="wxSlider" name="wxID_SLIDER_1"> <style>wxSL_AUTOTICKS|wxSL_HORIZONTAL|wxSL_LABELS|wxALWAYS_SHOW_SB</style> <value>600</value> <min>200</min> <max>1000</max>
</object>
Here is how I load the xrc file:
if (!wxXmlResource::Get()->Load(wxT("xrc/Slider.xrc")))
return false;
I believe the xrc file works properly because the button works properly.
Please let me know if you need any more information.
- Full Post
#11515: wxDataViewSortedListModel get/setters
Patch:
Get/setters to access private data members.
Notes:
- The reason for this patch is simply that I have several projects that cannot compile without it (sf.net/projects/dbase, sf.net/projects/regattalog, cpcloader.trak.dk, wxcommander.com)
- wxDataViewSortedListModel does not exist in 2.9 so these projects comes with their own wxDataViewSortedListModel implementation for 2.9, but naturally I'll prefer using the official wxDataViewSortedListModel implementation when building with 2.8 - which requires this patch to be applied to work.
- Full Post
#12027: wxCommandProcessor crash
There is a crash in wxCommandProcessor::Store when there is a limit for stored commands and m_currentCommand is first node.
Steps for reproduce this:
1) create a wxCommandProcessor with limited number of commands
2) submit max commands (m_maxNoCommands)
3) Undo (m_maxNoCommands - 1) commands
4) submit new command
in this case first node is deleted and m_currentCommand deleted too. And we have crash when trying to access m_currentCommand.
Attached file contains patch that fixed this problem: fist we remove unnecessary commands after m_currentCommand. and then we can try to remove first node.
This is reproduced in 2.8.10 and trunk brunches.
- Full Post
#12092: Standard IDs does not work in Mac OS X menubar
I just started running tutorial on wxPython (2.8.11) and noticed that by using standard IDs menu bar is not working.
I have Mac OS X 10.6 (64-bit, latest updates), Python came with Mac, no updates where made (2.6.1). Python runs on 32-bits by setting VERSIONER_PYTHON_PREFER_32_BIT=yes environment variable.
This code example was tested:
After launching application we can see "File" menu, but after pressing we don't get full menu, there is no "About" and "Exit" items. But if we change wx.ID_ABOUT and wx.ID_EXIT to random other numbers menu does work as expected. Looks like there is some problems with Mac OS X and standard IDs?
By using example (File menu does not show up):
By changing standard IDs to random numbers 10 and 20 (File menu does show up):
- Full Post
#12143: Click anywhere inside wxListBox generates wxEVT_COMMAND_LISTBOX_SELECTED event
Hi all,
This is a rather unexpected behaviour for wxListBox. Clicking anywhere inside wxListBox without intending to select an item generates selected event. Calling 'GetSelection()' inside the event handler function returns 0 or first item selected even though the control is only having focus and no item have been selected yet. This behaviour is seen in Windows, I wonder how it behaves on other platforms.
I would have expected this event to fire only when a new item is selected. Why is this so?
Case System:
Window Vista Ultimate SP2
wxWidgets v2.8.11
-Sanje2v
- Full Post
#12987: 2.8.12 RC 1: Please update install-cocoa.txt and install-mac.txt
This issue is for wxWidgets-2.8.12-rc1
In these two files
install-cocoa.txt
install-mac.txt
Please add the following sentence as the first line:
Build instructions for Carbon and Cocoa are available in docs/mac/install.txt
Additional notes:
These two files no longer exist in 2.9.x or in trunk. I looked in svn in the 2.8.12 branch and could not find them there either. So I don't know where they come from. If they exist in 2.9.x or in trunk, the sentence above should point to docs/osx/install.txt not docs/mac/install.txt in those newer branches.
- Full Post
Web Development Microframeworks Roundup
As I'm really into minimalism and lightweight tools I've been working with and evaluating many microframeworks for web development recently. Here are some of the more interesting frameworks across multiple languages that I've found in my searches. Sinatra is the first microframework that I've worked with and many of these others are either straight clones of Sinatra or are loosely based on Sinatra and it's underlying design impetus.Ruby
Python
Java
PHP
Javascript
C#
Perl
Hopefully someone will find this listing of web development microframeworks useful. I searched for hours trying to find all of the options and which ones are best. Maybe this will save you some time in your search.As a followup post I am planning on comparing/contrasting the Python frameworks. - Full Post
Python
Java
PHP
Javascript
C#
Perl
Hopefully someone will find this listing of web development microframeworks useful. I searched for hours trying to find all of the options and which ones are best. Maybe this will save you some time in your search.As a followup post I am planning on comparing/contrasting the Python frameworks. - Full Post
15 Python Developers You Need To Follow On Twitter
I'm fairly new to Twitter but have been coding in Python for quite some time. I've been trying to build up my list of people that I follow and who follow me. While I was looking around I whipped up a list of some Python developers who have a lot of really interesting/helpful/insightful things to say about Python and things in general.
The following 15 people made the short list this time; there are way more Python developers extant than I have time/space to write about them so let this get you started. I apologize in advance for those who I left out.1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.**UPDATE** - So this dude on reddit posted some awesome stuff about . Sorry for being so lazy and not doing this myself! =p - Full Post
The following 15 people made the short list this time; there are way more Python developers extant than I have time/space to write about them so let this get you started. I apologize in advance for those who I left out.1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.**UPDATE** - So this dude on reddit posted some awesome stuff about . Sorry for being so lazy and not doing this myself! =p - Full Post
Master Python and TDD Through Python Koans
The other day a friend of mine who's interested in learning to program asked me for some advice on how best to approach the Ruby language. After thinking for a few minutes I remembered coming across a great tutorial by called that walks you through all of the core language features, syntax, libraries, and test-driven development.
I downloaded the koans to his home directory on my development server, explained how it works and then had him give it a shot. He's progressing well and has already learned most of the core language syntax. I myself have completed the koans in order to evaluate their efficacy and I'm thoroughly impressed. This should be the first step for learning a new language.
Luckily many people have found the koans useful and have ported them to their favorite language; Python is no exception. - Full Post
I downloaded the koans to his home directory on my development server, explained how it works and then had him give it a shot. He's progressing well and has already learned most of the core language syntax. I myself have completed the koans in order to evaluate their efficacy and I'm thoroughly impressed. This should be the first step for learning a new language.
Luckily many people have found the koans useful and have ported them to their favorite language; Python is no exception. - Full Post
Just Forked My First Project on Github
I've been wanting to contribute to some FOSS projects for quite some time now but never got around to doing it. I was looking to write a webservice today that would allow a C# application I had to request domain information from my webservice which uses the namecheap.com API.
I noticed a ruby library on github that allowed for the checking of domain availability and which looked like a good platform to start building my codebase on so I forked it and began adding functionality to it. A few hours later I setup git and pushed my first changes to my forked repo. Man it felt good!
Hopefully someone finds the additional Namecheap.com API calls that I'm implementing to be useful. You can find my fork of the . - Full Post
I noticed a ruby library on github that allowed for the checking of domain availability and which looked like a good platform to start building my codebase on so I forked it and began adding functionality to it. A few hours later I setup git and pushed my first changes to my forked repo. Man it felt good!
Hopefully someone finds the additional Namecheap.com API calls that I'm implementing to be useful. You can find my fork of the . - Full Post
How to Make Finding Freelance Development Jobs Way Easier
I get a lot of my freelance work from the Computer Gigs section of Craigslist for my local town (Phoenix) and others in the US. It's become tedious to check the sites each day and filter through the myriad of jobs that are local-only or that don't fit my criteria. So I imported all of the RSS feeds for the Computer Gigs section of each US city into my Google Reader account and started filtering away. This has made things way easier and efficient.
If you're like me and don't wanna spend time unnecessarily on setting this up today's your lucky day. After I imported the feeds, renamed them all to something more meaningful and place them into a folder aptly named "Craigslist Computer Gigs" I exported the feed list to an OPML file which I'm making available to the world. Import the file into your Google Reader or other RSS feed reader and you can be cruising the CPG section of all US cities in no time. - Full Post
If you're like me and don't wanna spend time unnecessarily on setting this up today's your lucky day. After I imported the feeds, renamed them all to something more meaningful and place them into a folder aptly named "Craigslist Computer Gigs" I exported the feed list to an OPML file which I'm making available to the world. Import the file into your Google Reader or other RSS feed reader and you can be cruising the CPG section of all US cities in no time. - Full Post
Skype4Py Mac Problems
I was looking forward to covering Skype4py some more today but when I fired up TextMate to do some coding I noticed that some of my existing scripts no longer worked with the new version of Skype that I have (5.1.0.968).
My current setup is:OS X 10.6.8 (Snow Leopard)
Python 2.6.1
Skype4Py 1.0.32.0
Skype 5.1.0.968
After doing a few searches I noticed that a bunch of other people are having issues on their Macs with Skype4Py as well; with most encountering segmentation faults when they try to execute the Attach() method on the Skype4Py.Skype() instance. It's unclear what exactly is causing the seg fault but all indicators point at the library not being updated to reflect changes that were made to Skype (probably after the reverse-engineered Skype protocol details hit the internet).
Quite simply here's what happens when you try a simple test script using Skype4Py:# test.py
import Skype4Py
s = Skype4Py.Skype()
s.Attach()
nya:skype tzayad$ python test.py
Segmentation fault
- Full Post
My current setup is:OS X 10.6.8 (Snow Leopard)
Python 2.6.1
Skype4Py 1.0.32.0
Skype 5.1.0.968
After doing a few searches I noticed that a bunch of other people are having issues on their Macs with Skype4Py as well; with most encountering segmentation faults when they try to execute the Attach() method on the Skype4Py.Skype() instance. It's unclear what exactly is causing the seg fault but all indicators point at the library not being updated to reflect changes that were made to Skype (probably after the reverse-engineered Skype protocol details hit the internet).
Quite simply here's what happens when you try a simple test script using Skype4Py:# test.py
import Skype4Py
s = Skype4Py.Skype()
s.Attach()
nya:skype tzayad$ python test.py
Segmentation fault
- Full Post
My Five Favorite Python Library Finds on Github This Week
- (python library for extracting html5 microdata)
I've been working with HTML5 a lot especially when dealing with Wordpress blogs and was interested in what's available for HTML5 in Python.
- (Python WSGI framework to create REST web services)
Over the last few weeks I've had the (mis)fortune of having to develop a public API for a company using PHP and the Slim framework. Slim isn't bad but PHP is getting long in the teeth and it's just not nearly as fun to develop in as Python and Ruby. wsgiservice looks like a good choice (from out of many) for building RESTful APIs.
- (Python access to the Etsy API)
Esty's awesome. Python's awesome. Putting the two together and making a cool site or tool of some sort seems like a good idea and this module can certainly help.
- (Python Itunes Library parser)
iTunes is hated my many but I love it and this library (although not maintained as well as it could be) allows access to my music collection. I use it for fixing meta tags on my audio files.
- (Python bindings for oDesk API )
I work full-time on oDesk these days as a developer and am building some custom tools to make finding new jobs easier and to make visualizing some of my key statistics easier. For instance, oDesk doesn't give you an earnings to date readout and I would like that. I would also like to be able to filter jobs out so that I'm never shown jobs below my minimum price point.
- Full Post
I've been working with HTML5 a lot especially when dealing with Wordpress blogs and was interested in what's available for HTML5 in Python.
- (Python WSGI framework to create REST web services)
Over the last few weeks I've had the (mis)fortune of having to develop a public API for a company using PHP and the Slim framework. Slim isn't bad but PHP is getting long in the teeth and it's just not nearly as fun to develop in as Python and Ruby. wsgiservice looks like a good choice (from out of many) for building RESTful APIs.
- (Python access to the Etsy API)
Esty's awesome. Python's awesome. Putting the two together and making a cool site or tool of some sort seems like a good idea and this module can certainly help.
- (Python Itunes Library parser)
iTunes is hated my many but I love it and this library (although not maintained as well as it could be) allows access to my music collection. I use it for fixing meta tags on my audio files.
- (Python bindings for oDesk API )
I work full-time on oDesk these days as a developer and am building some custom tools to make finding new jobs easier and to make visualizing some of my key statistics easier. For instance, oDesk doesn't give you an earnings to date readout and I would like that. I would also like to be able to filter jobs out so that I'm never shown jobs below my minimum price point.
- Full Post
The Perfect Solution for Programmers on the Go
I've been fast approaching burnout and had to do something right away to stave it off; freelance programming and consulting is my main source of income. My solution has been to start working outside in parks. Fresh air and lots of sunlight seems to help me beat the office blues and remain productive.The key to me being able to work outside and on the go has been my that I bought at the Verizon store in the Metro Center mall here in Phoenix. $50 is a small price to pay for the ultimate in mobility and speed.
I've been able to get speeds comparable to my 15mbps DSL service I have at home in most areas. The battery life is pretty good (about 4.5 hours in actual use). I also was able to get a $50 mail-in rebate that basically got me the device for free. Monthly service for 5gb of data is only $50.
This would be a great addition to your toolbox if you're trying to live the 4HWW lifestyle or just want some extra freedom in where/when you can work on your code. I would also buy this as a gift for any of my techie friends; they'd love having one I'm sure! - Full Post
I've been able to get speeds comparable to my 15mbps DSL service I have at home in most areas. The battery life is pretty good (about 4.5 hours in actual use). I also was able to get a $50 mail-in rebate that basically got me the device for free. Monthly service for 5gb of data is only $50.
This would be a great addition to your toolbox if you're trying to live the 4HWW lifestyle or just want some extra freedom in where/when you can work on your code. I would also buy this as a gift for any of my techie friends; they'd love having one I'm sure! - Full Post
If anyone cares what I'm up to ...
I've been using Python off and on for the past few months and really haven't had much time for blogging and such. I'm about midway through a project that's basically a link scanner that handles large volumes of links asynch using and the python library. Beanstalk is a great fit for basic asynch queueing needs.
Today I also started working in django again (just modifying an existing site for someone). It's nice to come back to django after a few months tearing my hair out in RoR land but still can't touch for most of what I do. - Full Post
Today I also started working in django again (just modifying an existing site for someone). It's nice to come back to django after a few months tearing my hair out in RoR land but still can't touch for most of what I do. - Full Post
Hipchat: The IM App That I've Been Waiting For ...
I've been waiting for years to have an IM app that I could use with the other developers on my team(s) to communicate about projects and integrate updates from source control and bug tracking. I'm not too keen on using proprietary apps or subscription-based apps in most situations but has far exceeded my expectations in the few weeks that I've been using it.
Besides having a slick interface and the features that I need it uses XMPP/Jabber and has both desktop and web versions of the app (written using Adobe Air). One of the features that I really like is when someone uses your username with an @ symbol preceding it and you're offline you'll receive an email with the message.
We've been using this primarily to have a record of our debates, conversations, and to have an ongoing record of important tidbits, URLs, git commits, etc. It also has been helpful for having a log of our planning discussions which we can use when bringing new developers onboard to let them sort of get into our heads and see how the app developed to its current state.
Go checkout Hipchat and . - Full Post
Besides having a slick interface and the features that I need it uses XMPP/Jabber and has both desktop and web versions of the app (written using Adobe Air). One of the features that I really like is when someone uses your username with an @ symbol preceding it and you're offline you'll receive an email with the message.
We've been using this primarily to have a record of our debates, conversations, and to have an ongoing record of important tidbits, URLs, git commits, etc. It also has been helpful for having a log of our planning discussions which we can use when bringing new developers onboard to let them sort of get into our heads and see how the app developed to its current state.
Go checkout Hipchat and . - Full Post
OS X Lion upgrade awesome but broke my python dev environment
OS X Lion brought some substantial improvements but required pretty much my entire development environment to be rebuilt. Python got upgraded to 2.7 and required all of my modules to be reinstalled. Apache wouldn't start because mod_fastcgi isn't provided for Lion. XCode had to have the new version reinstalled and then the command line tools package installed to get gcc back. I wish I would have known this before upgrading so that I was prepared. It's well worth the upgrade and the inconveniences that come with it but just beware that your system will definitely require some additional setup after upgrading. - Full Post
Find out where files were downloaded from with Python and xattr
Ever forget where you downloaded a file from? On OS X you can use HFS extended attributes to figure it out. Linux and Windows also support extended attributes but I don't know much about their implementations.
To find out where we downloaded a particular file from we can execute this command:
% xattr -p com.apple.metadata:kMDItemWhereFroms
The results will look like:
nya:~/Downloads % xattr -p com.apple.metadata:kMDItemWhereFroms CentOS-5.8-i386-netinstall.iso
62 70 6C 69 73 74 30 30 A2 01 02 5F 10 4C 68 74
74 70 3A 2F 2F 79 75 6D 2E 73 69 6E 67 6C 65 68
6F 70 2E 63 6F 6D 2F 43 65 6E 74 4F 53 2F 35 2E
38 2F 69 73 6F 73 2F 69 33 38 36 2F 43 65 6E 74
4F 53 2D 35 2E 38 2D 69 33 38 36 2D 6E 65 74 69
6E 73 74 61 6C 6C 2E 69 73 6F 5F 10 2E 68 74 74
70 3A 2F 2F 79 75 6D 2E 73 69 6E 67 6C 65 68 6F
70 2E 63 6F 6D 2F 43 65 6E 74 4F 53 2F 35 2E 38
2F 69 73 6F 73 2F 69 33 38 36 2F 08 0B 5A 00 00
00 00 00 00 01 01 00 00 00 00 00 00 00 03 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 8B
Attribute values are usually returned by the -p flag as strings; however, when the value contains nulls the information will be returned in hex instead. This info isn't terribly useful so let's hop over into the Python REPL and take a look.
>>> import xattr
>>> xattr.getxattr('CentOS-5.8-i386-netinstall.iso', 'com.apple.metadata:kMDItemWhereFroms')
'bplist00\xa2\x01\x02_\x10Lhttp://yum.singlehop.com/CentOS/5.8/isos/i386/CentOS-5.8-i386-netinstall.iso_\x10.http://yum.singlehop.com/CentOS/5.8/isos/i386/\x08\x0bZ\x00\x00\x00\x00\x00\x00\x01\x01\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8b' - Full Post
To find out where we downloaded a particular file from we can execute this command:
% xattr -p com.apple.metadata:kMDItemWhereFroms
The results will look like:
nya:~/Downloads % xattr -p com.apple.metadata:kMDItemWhereFroms CentOS-5.8-i386-netinstall.iso
62 70 6C 69 73 74 30 30 A2 01 02 5F 10 4C 68 74
74 70 3A 2F 2F 79 75 6D 2E 73 69 6E 67 6C 65 68
6F 70 2E 63 6F 6D 2F 43 65 6E 74 4F 53 2F 35 2E
38 2F 69 73 6F 73 2F 69 33 38 36 2F 43 65 6E 74
4F 53 2D 35 2E 38 2D 69 33 38 36 2D 6E 65 74 69
6E 73 74 61 6C 6C 2E 69 73 6F 5F 10 2E 68 74 74
70 3A 2F 2F 79 75 6D 2E 73 69 6E 67 6C 65 68 6F
70 2E 63 6F 6D 2F 43 65 6E 74 4F 53 2F 35 2E 38
2F 69 73 6F 73 2F 69 33 38 36 2F 08 0B 5A 00 00
00 00 00 00 01 01 00 00 00 00 00 00 00 03 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 8B
Attribute values are usually returned by the -p flag as strings; however, when the value contains nulls the information will be returned in hex instead. This info isn't terribly useful so let's hop over into the Python REPL and take a look.
>>> import xattr
>>> xattr.getxattr('CentOS-5.8-i386-netinstall.iso', 'com.apple.metadata:kMDItemWhereFroms')
'bplist00\xa2\x01\x02_\x10Lhttp://yum.singlehop.com/CentOS/5.8/isos/i386/CentOS-5.8-i386-netinstall.iso_\x10.http://yum.singlehop.com/CentOS/5.8/isos/i386/\x08\x0bZ\x00\x00\x00\x00\x00\x00\x01\x01\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8b' - Full Post
Super affordable standing workstation built from IKEA parts
I've been reading a lot about the health and productivity benefits of working at a standing desk for months now and today finally decided to head down to IKEA and grab the parts to build one. The inspiration came from an article about . This seemed the most sensible way to go about getting what I wanted.From IKEA(2) Lack side tables - $19.98
(1) Ekby Viktor 11" shelf - $5.99
(2) Ekby Valter shelf brackets - $8
From Home Depot(4) 5/16" x 3" hex bolts - $1.24
(8) 1/4" washers - $0.88
(4) 1/4" hex nuts - $0.24
The only difference from the article I read was that I used the bolts to attach the brackets since the table legs are hollow and I didn't attach the shelf to the brackets. Total was a touch over $60 with tax and gas to get there and back ($40 if you live close to an IKEA). I love this setup and the only thing I'm gonna change is to drop the bracket down about an inch and a half somehow to get the keyboard surface at a more comfortable level. I also found that I needed to put something about 1/4" thick under my keyboard to get it to be comfortable to type on; having the keyboard at an angle was hard on my wrists. - Full Post
(1) Ekby Viktor 11" shelf - $5.99
(2) Ekby Valter shelf brackets - $8
From Home Depot(4) 5/16" x 3" hex bolts - $1.24
(8) 1/4" washers - $0.88
(4) 1/4" hex nuts - $0.24
The only difference from the article I read was that I used the bolts to attach the brackets since the table legs are hollow and I didn't attach the shelf to the brackets. Total was a touch over $60 with tax and gas to get there and back ($40 if you live close to an IKEA). I love this setup and the only thing I'm gonna change is to drop the bracket down about an inch and a half somehow to get the keyboard surface at a more comfortable level. I also found that I needed to put something about 1/4" thick under my keyboard to get it to be comfortable to type on; having the keyboard at an angle was hard on my wrists. - Full Post
PSF core grant, the last days: the website works (so far)!
The last couple of days I have been working hard to hack together (and I mean hack; it is not the most elegant code or solution I have ever written) the remaining bits of the website. I am currently waiting for the task queues to finish doing their thing so that I have a complete data set before I go "public" by asking the community for some help with something. But so far things are working out and hopefully I will wake up in the morning to no errors and the data set complete!
The biggest challenge I have run into over the last couple of days is App Engine's . that ain't much data. So I had to do some reworking of my data syncing workflow to use the datastore as a temporary storage solution. It worked out, but I'm sure I am doing something silly. At least I made sure everything happens in a transaction so that if anything fails the task queue will simply try again until it works (hopefully it's a transient failure and doesn't require me to fix some code =) . - Full Post
The biggest challenge I have run into over the last couple of days is App Engine's . that ain't much data. So I had to do some reworking of my data syncing workflow to use the datastore as a temporary storage solution. It worked out, but I'm sure I am doing something silly. At least I made sure everything happens in a transaction so that if anything fails the task queue will simply try again until it works (hopefully it's a transient failure and doesn't require me to fix some code =) . - Full Post
My personal plans for Python 3.3
Now that my life has hit another purgatory moment (waiting to here when my wife's permanent residency interview will be and still in the ramp-up period at work), I have had some time to think about what my personal goals will be for . This list is in no particular order and I make no promises to actually do any of it as I only have roughly 249 days until alpha1. =)First, I want to . I think I can simply freeze importlib._bootstrap, do some imports of built-in modules, and then have it almost work. The reason it is "almost" is that importlib relies on _io, which itself relies on importing the os module. That's a problem when you are trying to essentially import what will act as import. I need to have a look still at the _io code to see if the importing of os can be postponed until after importlib is up and running.
Second, I need to finish . Before the whole work/immigration whirlwind started I submitted this PEP to python-dev and got a bunch of feedback on it. The usual push-and-shove led to what seemed to be a general consensus of what the PEP should be striving for, so I think I can wrap it up and get it accepted once I have time to incorporate the feedback (mainly watering down the wording so it is less technical).
Third, I should try to finally get accepted (). The code has been up on the Cheeseshop as for over 4 years now without any complaints. Since I know there are users out there ( keeps asking me to finally get the code into the stdlib) I figure the API is generally acceptable and there are no secret bugs creeping in there. Basically I just need to rip out the silly use of inspect that is left since I dropped Python 2 support in the development version, make sure I have proper code coverage, and write docs.
Fourth, I need to get an Amazon or Rackspace instance up that generates a coverage report for the stdlib on some reasonable schedule. This first requires me to finally which gets coverage reporting much earlier in the interpreter startup than it does by default. Once that is done I need to get a VM going somewhere that can freshly check out Python, coverage.py, run the test suite under coverage, and then make the coverage report available for viewing. This will make the test coverage not only more visible, but easier for people to help when contributing to Python.
So that is everything I am hoping to do before March 3, 2012. I plan on making the coverage and importlib bootstrapping my priorities, although I will finish PEP 399 first since I hate leaving open PEPs lying about. And I am definitely going to try to not take on any more Python projects until I get through this list as this is already plenty for me to do. =) - Full Post
Second, I need to finish . Before the whole work/immigration whirlwind started I submitted this PEP to python-dev and got a bunch of feedback on it. The usual push-and-shove led to what seemed to be a general consensus of what the PEP should be striving for, so I think I can wrap it up and get it accepted once I have time to incorporate the feedback (mainly watering down the wording so it is less technical).
Third, I should try to finally get accepted (). The code has been up on the Cheeseshop as for over 4 years now without any complaints. Since I know there are users out there ( keeps asking me to finally get the code into the stdlib) I figure the API is generally acceptable and there are no secret bugs creeping in there. Basically I just need to rip out the silly use of inspect that is left since I dropped Python 2 support in the development version, make sure I have proper code coverage, and write docs.
Fourth, I need to get an Amazon or Rackspace instance up that generates a coverage report for the stdlib on some reasonable schedule. This first requires me to finally which gets coverage reporting much earlier in the interpreter startup than it does by default. Once that is done I need to get a VM going somewhere that can freshly check out Python, coverage.py, run the test suite under coverage, and then make the coverage report available for viewing. This will make the test coverage not only more visible, but easier for people to help when contributing to Python.
So that is everything I am hoping to do before March 3, 2012. I plan on making the coverage and importlib bootstrapping my priorities, although I will finish PEP 399 first since I hate leaving open PEPs lying about. And I am definitely going to try to not take on any more Python projects until I get through this list as this is already plenty for me to do. =) - Full Post
Wing IDE 4.0.1 released
Wingware has released version 4.0.1 of Wing IDE, an integrated development environment designed specifically for the Python programming language.This maintenance release includes the following:Several fixes in source analysis, find uses, and refactoring Improves Django support and adds support for Django 1.3Adds support for 64-bit Python 3.2 on WindowsImproves diff/merge for non-ascii text and on WindowsAdds support for debugging Python with -O command line optionAvoids a potential hang in the debugger with wx and gtk GUI appsFixes a potential crash on long lines in the editor Fixes problems that could lead to failure to startAbout 40 other bug fixes and minor improvements See the details in the .To see some of the new features in Wing IDE 4.0 in action, check out . - Full Post
Wing IDE 4.0.2 released
Wingware has released version 4.0.2 of Wing IDE, an integrated development environment designed specifically for the Python programming language.This release includes the following:Added introduce variable refactoring operation Support for using *.pi files to augment source analysis of *.py filesSupport autocompletion for PySide Qt bindingsRecognize tags and attributes for HTML5Avoid problems with Ubuntu UnityFixed matplotlib support for GtkAgg backend and missing default backendSyntax highlight comments in Django template filesFixed syntax highlighting for Cython, VHDL, R, and several othersFixed failure to replace all search matches near the end of a fileAbout 40 other bug fixes and minor improvements See the details in the .To see some of the new features in Wing IDE 4.0 in action, check out . Or download a. - Full Post
Wing IDE 4.0.3 released
Wingware has released version 4.0.3 of Wing IDE, an integrated development environment designed specifically for the Python programming language.This release includes the following changes:Added ability to save and load unit test resultsAdded ability to run unittest tests from the command line and save the results for loading into WingAllow access to the search engine and source analysis from the scripting APIProvide optional reminder when Support+Upgrades is expiringAdded copy-selection-or-line commandFixed about 36 bugs in source analysis, refactoring, and other featuresSee the details in the .To see some of the new features in Wing IDE 4.0 in action, check out . Or download a. - Full Post
Free tickets for PyCon Australia 2011
Wingware is sponsoring and as part of our sponsor package we get two free tickets. Unfortunately we won't be able to attend the conference ourselves so we are giving them away on a first-come-first-served basis. If you would like one or two tickets to the conference, please email us at support at wingware dot com. The conference will be held August 20-21 in Sydney, Australia.By the way, this year we are also sponsoring (or already have sponsored) PyCon in North America, EuroPython, SciPy, Kiwi PyCon, PyOhio, PyGotham, PyCon UK, PyCon DE, PyCon Finland, and PyCon Ireland. It's great to see so many Python conferences springing up around the world, and we're pleased that we can help make them possible by being sponsors!If you are attending any of these, keep an eye out for Wingware goodies and specials. - Full Post
Wing IDE 4.1.10 released
Wingware has released version 4.1.10 of , our integrated development environment designed specifically for the Python programming language.Wing IDE is a cross-platform Python IDE that provides a professional quality code editor with vi, emacs, and other key bindings, auto-completion, call tips, refactoring, context-aware auto-editing, a powerful graphical debugger, version control, unit testing, search, and many other features.This minor release includes:Allow setting syntax highlighting colors for all supported file types Added Previous/Next buttons to the Find Uses tool Added more line editing key bindings in default keyboard personality Added Close Others to the Open Files tool's context menu Updated German localization (thanks to Chris Heitkamp!) Added character order fixup auto-editing operation (such as x(.) -> x().)Preference for maximum file size to try to open (default is 100MB) Enter during rename, move, and introduce var refactoring does the operation Fix typing and pasting into rectangular selection in non-VI keyboard modesRecognize *.m as matlab file by default Find Uses prioritizes current file over the rest of the project Several auto-editing and Turbo completion mode fixes Fix VI mode r (replace char) on non-ascii characters About 15 other bug fixes and minor improvements See the details in the . | | | - Full Post
Wing IDE 4.1.12 Released
Wingware has released version 4.1.12 of , our integrated development environment designed specifically for the Python programming language.Wing IDE is a cross-platform Python IDE that provides a professional quality code editor with vi, emacs, and other key bindings, auto-completion, call tips, refactoring, context-aware auto-editing, a powerful graphical debugger, version control, unit testing, search, and many other features.This minor release includes:Support for Python 2.6 and 2.7 running on cygwin List SHA1 hashes on the downloads page Show perspectives key bindings in Load Perspective sub-menu Fix several color-related regressions Fix extract refactoring when toplevel source is indented Return focus to editor after refactoring operations 6 other bug fixes and minor improvements See the details in the . | | | - Full Post
Wing IDE 4.1.13 Released
Wingware has released version 4.1.13 of , our integrated development environment designed specifically for the Python programming language.Wing IDE is a cross-platform Python IDE that provides a professional quality code editor with vi, emacs, and other key bindings, auto-completion, call tips, refactoring, context-aware auto-editing, a powerful graphical debugger, version control, unit testing, search, and many other features.This minor release includes:Sped up Search in Files, particularly when looking in Project Files Sped up project loadSeveral auto-editing fixesSeveral VI mode fixesCorrectly detect snippet context in files with tab indentationFix goto-definition in the Debug ProbeAdded How-To with tips for using Wing IDE with GTK via PyGObject14 other bug fixes and minor improvementsSee the details in the . | | | - Full Post
Jython Migrates to Mercurial
Jython has finally migrated from Subversion to Mercurial. This has been a long
time coming: unfortunately we had a difficult Subversion repo that took some
effort to cleanly convert to a different revision control system.
The new official Jython repo is now hosted @
with a for easy forking.
There's also a larger read-only repo with ongoing feature branches (converted
to Mercurial Bookmarks) hosted at
Mercurial makes it even easier to contribute to Jython, pull up a fork and come
help us build Jython 2.6!
- Full Post
3.2.1 Release Candidate 2 Released
Following up a big month of , the second release candidate of the 3.2.1 line . Since the first release candidate on May 15, over 40 issues have been fixed. We encourage everyone to test their projects with this candidate to get one last look before the final release of 3.2.1.
What's fixed?
I/O
spent a few years witout a fix, but a simple addition to clear errors before calling fgets solves the problem of interrupting sys.stdin.read() with CTRL-D inside of input(). The io system saw a cleanup in with the readall method with None being the return value on a read() which returns None, and a ValueError is now raised when a file can't be opened.
Although this isn't new for RC2, is an important 3.2.1 fix to input() on Windows - the fixing of a trailing \r. The issue has been reported many times over and affects a many people (distutils upload command anyone?), so hopefully 3.2.1 does the trick for you.
Windows
3.2.0 brought a new feature for Windows: os.symlink support. With that feature came , os.stat was improperly evaluating Windows symlinks, so the inner workings of the various stat functions were corrected.
A user noticed that os.path.isdir was slow, and the fact that it relied on os.stat contributed to that, especially when evaluating symlinks (which are generally twice as slow as regular files). While os.path.isdir isn't anyone's performance bottleneck, it's called numerous times on interpreter startup so changing it in to use GetFileAttributes gives a tiny speedup to build on.
subprocess
Creating a Popen object with unexpected arguments was causing an AttributeError, but that was reported in and was fixed by the reporter. Due to a change in 3.2.0, Popen wasn't correctly handling empty environment variables, specifically the env argument. was created for the issue and was promptly fixed.
... - Full Post
PandaBoard, Raspberry Pi coming to Buildbot fleet
Thanks to the , a arrived on Trent Nelson’s desk just in time for the holidays! Santa dropped off the present for python-dev this morning, and there’s a not far behind it.On Raymond Hettinger’s recent thread about the memory layout of , Barry Warsaw and Christian Heimes shared concerns about how things might look on ARM devices. Christian mentioned the environment, run by Trent Nelson, but without any ARM machines in the environment, Trent offered to host the boxes if someone donates them.Based on the thread’s suggestions and the low cost of the devices, the PSF authorized purchase of a PandaBoard ES, featuring a 1.2 GHz ARM Cortex A9, along with several accessories to get it running. The PSF already had a few Raspberry Pi devices on hand, which come with a 700 MHz ARMv6, so one was dispatched to Trent.Thanks to the PSF for making the purchase, and thanks to Trent for offering to set up the machines and add them to the environment!
- Full Post
- Full Post
Friday, July 5, 2013
pythonbrew
Python Environment manager. Contribute to pythonbrew development by creating an account on GitHub.- Full Post
Python Development on Linux and Why You Should Too
If you’re a programmer and you use Linux but you haven’t yet entered the amazing world that is Python development, you’re really missing out on something special.- Full Post
Python and Web: Building Dynamic Web Forms in Web2Py from Ground – Part I
Under the particular domain of web development, Python has offered much more than we expected it to in the early 2000’s. It now offers multiple pre-built web frameworks that even a novice coder can utilize for the development of complex applications.- Full Post
Instant Pygame for Python Game Development How-to: Safari Books Online
9781782162865 - Instant Pygame for Python Game Development How-to - Create engaging and fun games with Pygame, Python's Game development library Learn something new in an Instant! A short, fast, focused guide delivering immediate results.- Full Post
Django 1.4 release notes
Django is a high-level Python Web framework that encourages rapid development and clean, pragmatic design.- Full Post
Interview: Gabriel Grant on stack.io. Node.js and Django
Gabriel talks about the challenges of working on a system like stack.io. He also compares server-side JavaScript systems like Node.js and Python's Django, in how they deal with performance, speed of development, etc.- Full Post
Python Web Services with Tornado
This is an API for the development of soap web services using the python programming language and tornado web server. The goals of this api is provide an simple and easy way of develop and deploy soap web services.
- Full PostTalks
RT @codemotion_es: New #codemotion #es talks: "Android prototyping and development with Python" by @mandel_macaque - http://t.co/6FqQFcO0...- Full Post
libavg on Raspberry Pi
libavg development team has recently announced a beta port of their multimedia library to the Raspberry Pi. libavg is a high-level development platform for media-centric applications using Python as...- Full Post
pyscripter
pyscripter - An open-source Python Integrated Development Environment (IDE) http://t.co/3WHRZZ5FyA via @prismatic #python- Full Post
libavg on Raspberry Pi
libavg development team has recently announced a beta port of their multimedia library to the Raspberry Pi. libavg is a high-level development platform for media-centric applications using Python as scripting language and written in C++.- Full Post
Cross-compiling libavg 1.7 for ARM on Debian
libavg is a high-level development platform for media-centric applications using Python as scripting language and written in C++ and I’ve already written a post to cross-compile libavg 1.6 in Ubuntu (with linaro cross toolchain) and using...- Full Post
Why I think node.js is the future for us but not the present
At funciton we are not married to a technology or language. We believe that every need has a very unique and special way to be solved. While we do a lot of python development (python is awesome!) we always struggle to find enough python developers.- Full Post
R and Python
I recently started using Python for model development instead of R. Overall, it has been a fairly easy transition; the languages are fundamentally quite similar. Both have strong functional roots. ...- Full Post
Subscribe to:
Posts (Atom)