Browsing the archives for the Python tag.


Pythonic Explicitness

Software

Still on my little mini-Python journey to determine if I have a future using Google App Engine. During my travels, I found The Zen of Python to be an interesting list, although item #2 baffles me:

Explicit is better than implicit

It doesn’t baffle me because I don’t understand it, or agree with it — I do, wholeheartedly. I’m a big bracket guy. I remember well a diatribe by my Ada professor in college about the use of explicit brackets (or BEGIN…END), even when the language doesn’t require it. I came to internalize his way of looking at programming.

Rather, it baffles me because Python code blocks are determined by the indent level of the code — which seems exceedingly implicit to me. Isn’t it?

No Comments

Python = Great Programming Language?

Software

If Python is such a wonderful programming language, why do we need version 3.0 “fixes” – which, by the way, will cause a majority of current Python code to break?

[..] version 3.0, which breaks backwards compatibility to the extent that even that simplest of programs, the classic ‘Hello, World’, will no longer work in its current form.

The changes being made in Python 3.0 are drastic and may cause pain for some, but they will improve the language significantly as a vehicle for the teaching of programming in schools and universities. This paper explains why this is so and discusses some of the obstacles that educators might face in making an early move to version 3.0 from earlier versions.

My goal here is not to bash Python, but to try to point out that the reflexive ABM (Anybody But Microsoft) mentality causes adherents to irrationally assume that anything NOT developed by Microsoft is automatically golden.

Based on what I’m seeing, give me Anders Hejlsberg and C# any day.

No Comments

Google App Engine Documentation and Python

Computing, Software

I’ve been browsing through the Google App Engine documentation and am violently resisting the urge to classify or judge the Python software development environment based on what I see here. It seems like a bit of a toy language, and comparing it to what I know best – the Microsoft development environment – it would compete with maybe 2001-2002 – late ASP, very early C#/.NET. The templating system in particular brings back very many bad memories of “classic” ASP in the pre-.NET days.

However, having said that, the “Hello World” examples for any language — even “Hello, world” with authentication, templating, database access, etc. – are all fairly simple by necessity.

I’d like to get my hands on some robust Python web code to see what I’m (most likely) missing. The only real previous exposure I have to Python was in reading the book Programming Collective Intelligence; and while those examples were neat, most of them could have been written in just about any language – i.e. just algorithms. As a practicing software developer, I need (or rather, want) a complete development environment that not only allows robustness, but in fact encourages it. I’ll use an analogy: when I’m walking, I don’t want to have to look down every step and make sure my shoelaces are still tied.

Right now I’m wondering what a tightly wound developer from, say, the Eiffel camp would have to say about Python if her only exposure to it was via these Google docs. Yowza!

2 Comments

Google Releases BigTable, GFS Support – For Python

Software

See the TechCrunch post here. Essentially this is a little bit of a letdown after the big (unsubstantiated) lead-up over the weekend, due to the Python-only support. Yes, it’s just the first of what may be many languages, but I suppose they could have foreseen the reaction from the Ruby, PHP, or other (C# *cough*) crowds that might be very interested in building out apps within Google’s cloud.

So, if you’re Djangoing, you’re probably dancing…otherwise, hurry up and wait, unless you have the free time to learn a new platform.

We could have used this at Seattle Startup Weekend, where we developed Skillbit (RIP). That was a Django app. For me? If I have to do any heavy lifting using methods out of Programming Collective Intelligence, I may give this a go. Later.

UPDATE: Here’s an excellent write-up of the Google Apps Engine from Brady Forrest.

1 Comment