Volodymyr Sergeyev himself
RSS feed   View Volodymyr Sergeyev's profile on LinkedIn
Welcome to my portfolio. I provide software development, primarily in Python/Django.
Feel free to contact me by E-mail. My Skype ID: v.sergeyev. CV: CV_2009.PDF
Google Translate will help you produce multilingual web-sites at Feb. 22, 2010

Great tool from Google - Google on-line translator has also AJAX interface.
It allow you to use all it's capabilities in your software development. This means, that we can easily use 52 language-to-language translation for free :)

Here is a little python module, I used in elviv.com to create English descriptions for places on the city map. Module is alailable for free use.
http://www.djangosnippets.org/snippets/1934/

Read or post comments (0)
Project done: E-Booking - Luxury hotels and resorts at Dec. 17, 2009

E-Booking.com site is the collection of luxury hotels around the world. It brings to visitors information about most popular destinations; events and things to see in selected hotel area; reservation and booking engine; travel planner and blogging about travel experience.

Front end (what visitors see):
* hotels search by different criterias
* information about events, museums, disco etc in the area of resort
* reservation enqueries for rooms and packages
* search for available rooms and book it (pay with VISA, MC. Secure environment)
* travel planner (control panel of traveler)
* travel blogging: tell other travelers about own experience

Manager area:
* rich control panel bring tools to manage hotels, accommodations, amenities, restaurants, things to see and activities
* social (Twitter, Facebook) integration
* reservation enqueries and bookings workbenches
* management of rates for rooms for different seasons
* billing (wire payments, PayPal payments)

Superuser area:
* management of hotel managers, hotels etc
* invitation of new members
* billing and membership
* SEO: keywords, META data
* newsletter

Advertiser area:
* ads campaigns control panel
* analytics (shows, clicks, keywords, targets)
* restaurants and attractions (disco, clubs etc) advertisement
* billing

Site is designed to work on heavy load. E-Booking collection now is over 8 000 of hotels and grows. Also there are many other objects in database: it consists of over 100 tables.

E-booking homepage
Control panel

Read or post comments (2)
Produce PDF reports easy at Nov. 4, 2009

In current project we have a task to produce PDF documents. This is various 1-page reports with a piece of textual information. The thing, common for all this documents: they contain only text. In general we take some text from database, produce PDF and output it to user.

Django and Python have a rich bucket of powerful tools to produce PDFs: Reportlab, PDFlib, Pisa HTML2PDF, forge_fdf in Python etc. This tools allow to create complex PDF documents with images and forms.

But we found an easier way that meets our task. My friend has shown me a link with code snippet of "pyText2Pdf". This is a command-line tool to convert plain text into PDF files. It is really easy tool. The surprise - it's fully written in Python! I have done some modifications and it become usable with Django.

The way of producing PDF is quite simple: you take a text and pyText2Pdf returns you file-like object with PDF data. Here is an example:

import StringIO
input_stream = StringIO.StringIO(text)
result = StringIO.StringIO()

pdfclass = pyText2Pdf(input_stream, result, "PDF title")
pdfclass.Convert()

response = HttpResponse(result.getvalue(), mimetype="application/pdf")
response['Content-Disposition'] = 'attachment; filename=pdf_report.pdf'

return response

-------------------------------------
pyText2Pdf on Django Snippets web-site: http://www.djangosnippets.org/snippets/1778/

Read or post comments (0)
Backup your work at Sept. 21, 2009

Backup your data right now. It may happen, that tomorrow your laptop doesn’t boot and this night of work will be lost.

What an easy thing – zip and save 2nd copy of data elsewhere. I know it, I have had server crash last Tuesday and lost all my work from previous night. So why I worked last night? May be better to sleep more. No. Better – to create a backup.

Add backup job to scheduler, CRON, etc. Write, google ask friends for a script. Don’t wait for disaster.

Read or post comments (0)
Use the Power, Luck! at Sept. 9, 2009

It is the best time, when we start our Project. And we move it to 1.0 every day, hard working and improving every page.

But may occur one thing – you spend major part of time inventing a bicycle. This is amazing to do things by you. Of course you may trust only self written (or managed, if you run a team) things. Stop and thing clear. Do you able to do better maps then Google, or better JS library then JQuery, etc?

Inventing bicycles results your project doesn’t be ready in time. And, on the other hand - many resources spent, time is gone.

Use power of reuse. Or, other words – reuse existing services. Web is full of great and free stuff. Really! Only imagine how you construct your project from parts, like in Lego. The kind of web projects I mostly like is the mashup. This means to combine functionality of several web applications with open API. Sure, you add your own ideas, code or user interface.

Bla bla bla is nothing without examples. The project we open to web last days called “All Lutsk” (English version). It is mostly based on Google maps. Our home city is green, has interesting historic places, good for active rest and very nice indeed. The goal of the project to show all nice places in our city. So tourists can easily build a day of fun and get a good relax. Don't afraid of that site is non-English, we build it for local users, and they speak Ukrainian. But you always can use Google translate tool.

We spent 3 days of hard coding and result is running site. Agile methods are great. It allows you to build project iteration-by-iteration. My friends are saying that UI design are missing at all, or it needs social features. Thank you! It will be added in next iteration. And right now we working on implementing it. We have real-users-feedbacks. This is more important than what we think about project. Remember: users know more about their needs.

Read or post comments (0)
Workbench for bank clerks at Oct. 11, 2008

These days was finished project for Ukrainian bank "Privatbank". The purpose of developed software is management of debit and credit cards (Visa & Mastercard). System operates in local intranet and allows clerks to create and manage documents.

Input of new cards become via signal pick-up of card-reader device. Incoming data parsed by software and stored as regular database objects. Also full text search by cardholder's name or card number available in system.

Project based on: Django framework, Python programming language, SQLite and CherryPy web-server.

My role in project: Independent contractor.

My responsibilities in project:
- design of database layer, objects and models
- design of pages layout, CSS and HTML coding
- development of modules
- development of card-reader device program interface
- configuration of server for project

At screen shots below represents workbench in document edit mode and search results page:

Read or post comments (2)
Offline, 1-file version of "Getting tasks done!" at July 11, 2008


Today I have finished development of 1-file version of "Getting tasks done!" service. It intended for iPhone & iPod Touch users. Application has "sync with server" feature. Note: if you want to use sync with server, you need to create account at GTD! and login.

If you want simple, reliable application for task management - here is it. You may download it from Google Code:
http://code.google.com/p/offline-gtd/

Application is 1 HTML file with embedded css, images and javascript. No installation required.

Read or post comments (0)
Offline To Do application for iPhone & iPod Touch at June 24, 2008

Most users of iPod Touch don't have constant Web access. So we decided to develop version of Getting tasks done service with ability to work offline and sync with server when needed. You may use it without registration. But sync only works for registered users.

Offline Getting tasks done service

More about this feature you may read at GTD! blog.

Read or post comments (2)
5th place at Rambler Hackfest 2008 contest at April 16, 2008

I'm very proud that my team "Team #37" has obtained 5th place at contest "Startup during 24 hours" (Rambler).

The goal of this competition - create startup from scratch during 24 hours.
More than 60 teams participated in it. Our team obtained 5-th place.

Our project: All Mine!, built using Python/Django framework during 24 hours. The aim of this service - help people to increase productivity and be in touch with events (calendars), wishlist and upcoming tasks.

Read or post comments (0)
I won a book from Webworker Daily at April 16, 2008

It's looks now is my lucky time :)

Some days ago I participated in survey at Web Worker Daily.
And I won a copy of the WWD book, "Connect! A Guide to a New Way of Working"
http://webworkerdaily.com/connect-book/

Thank you very much :)

Read or post comments (0)
« Recent posts
This site is © 2007-2009 V.Sergeyev. Powered by Django