Hello, reader!

My name is Eugene Lazutkin.

I'm a software developer based in the Dallas-Fort Worth metroplex. Lazutkin.com is my professional blog, which contains short writeups and presentations regarding modern web applications. All articles here are written by myself, unless stated otherwise.

Recent posts

Functional fun in JavaScript with Dojo

Everybody knows that JavaScript is a multi-paradigm language, and it can be used to program functionally. Practically all functional idioms can be used directly: higher-order functions, recursion, closures, and so on. The recent resurgence of Functional Programming (FP) brings functional methodologies in the mainstream. FP fundamentals gave us a lot of powerful idioms: iterative functions, which can replace loops, list processing in general, function manipulations, and many other things, which helps us to keep our code small yet concise, more powerful, and more fun.

PyCon 2007 pictures

24 Feb, 2007 - 1 minutes
I published first day pictures from PyCon 2007. They are raw, unedited, I didn’t put descriptions yet. You can recognize Django guys, people from multiple Python web frameworks, and, of course, the BDFL with OLPC. But why wait for pictures to be prepped? Dig in while they are raw and fresh: Yes, this is Steve Holden sporting a Django t-shirt. Update: I added pictures from the 2nd day. Update #2: I added pictures from the 3rd day.

Improving performance of Dojo-based web applications

Introduction Web 2.0 brought on us an onslaught of new server-side web frameworks, and made it OK to put some code on the client side as well. Yes, I am talking about Ajax. While elements of Ajax were available (and used) for a long time now, 2005 was the crucial year for this relatively old technology fueled by proliferation of modern browsers with proper support of JavaScript and HTML DOM, which, in turn, gave a rise to numerous Ajax toolkits.

Estimating unknown

2 Aug, 2006 - 7 minutes
How long does it take to do a project? Software developers are asked this very question on regular basis. This is how every project begins. Why is it important? Because “time is money” and many software projects are priced mostly by time spent on the project. “We will take your project estimate in hours, multiply them by your rate in $/h, and we have our price.” Ask any consultant or IT staffer about that.

Setting up tools 2

This is the 2nd part of Setting up tools on Windows — notes mostly for myself. (No, I don’t run Django with MSSQL under IronPython. Yet.) In this installment I add more stuff to Eclipse, and set up my apps under FastCGI on Linux-based shared host (I use DreamHost). Eclipse This section was updated on 9/30/2006. I already set it up with PyDev and Subclipse. Now I want to add HTML/CSS editing.

Migration to magic-removal

6 May, 2006 - 2 minutes
Today I converted three web sites to the latest Django’s trunk formerly known as the magic-removal branch. It was a very positive experience in general. New Database API with lazy database queries (courtesy of QuerySet) rocks! Direct interaction with model classes allows doing a lot of things much simpler than it was before. A lot of small improvements, which makes a big difference like explicit template extensions (use whatever is appropriate for your content), more transparent new Admin inner class, natural overriding of model methods (no more _pre_save() and _post_save() hooks!

Google Summer of Code 2006

2 May, 2006 - 2 minutes
Yes, another Google SoC is upon us. I signed up as a mentor with Dojo and Django. Both projects are on the leading edge of new wave of web-based applications doing extremely cool stuff. I anticipate that some smart students will bridge both projects, but individual projects are fine too. What is Google SoC? Read the FAQ. Who can apply? Any student anywhere in the world can apply. You don’t have to be Comp.


5 Apr, 2006 - 1 minutes
By popular demands I am publishing pictures of my JTAG, which I made to revive a wireless router some time ago. Just click on the picture below to see it in all ghetto-style glory with some explanations of my "design decisions". You can see that it is very basic. It was made in ~3 minutes and costs ~$6 (the most expensive part was the cable — $3.99). It was assembled according to this diagram.

What programmers do

2 Apr, 2006 - 5 minutes
Let me give you one more definition of what computer programmers do: they design, build, and maintain complex systems. In many cases computer programs are more complex than “Hello, world!” examples. Way more complex. I am talking about the systems that have more branching possibilities than atoms in the universe. that cannot be verified using any formal methods in any practical timeframe. that cannot be tested with 100% code coverage in our lifetime.

GPL violation: Sveasoft

15 Mar, 2006 - 1 minutes
OpenWrt has officially terminated Sveasoft’s license citing blatant violation of the GPL. For more details go to OpenWrt’s forum: Unbelievable. It’s getting quite hilarious. For example you can “learn” that the GPL is derived directly from “the economic and political theories of Karl Marx”. In general it is so sad to see such abuses. It is not hard to comply with the license. If you don’t like it, don’t use the GPL’d software in your product.