Latest company news
What we are working on at CodeScale - news in projects, achievements and stuff that matters.
Our infrastructure gets even better
Our mission is to deliver better software, every day. In past few weeks, we deployed several improvements in our development and production infrastructure.
Additional, physically separated backup storages for even more safety of our customers. Production data are being backed up on several locations.
Continuous integration service
Jenkins CI server helps us in automated testing processes, taking care of periodical builds, running complex tests and notifications when something goes wrong.
New Selenium testing service
Automated testing of user interface using Selenium and Jenkins CI server gives us more off-site, automated possibilities in testing process.
Python packages repository mirror
Internal Localshop server is great addition to Python Package Index serving more than 30,000 packages at the moment. Thanks to Localshop, we do not depend on centralized nature of Python Package Index and its stability.
Speaking at local Python events
In past few months, our team members spoke at local Python community events in Prague organized by Python.cz.
- PyCharm IDE by Vladimír Gorej
- Emacs by Václav Král and Jozef Ševčík
- Django Tastypie APIs by Vladimír Gorej
- Gearman by Jozef Ševčík
You can find presentations on YouTube channel. Thanks to organizers, it has been fun !
We have moved to a new office
Helping M-cent s.r.o. to manage IT infrastructure
Our latest success is migration of IT solutions for our new customer, M-cent s.r.o. to fully managed environment. M-cent provides professional investment and trading services. We’ve migrated their CRM software to new application and backend servers, fixed a lot of glitches and deployed Google Apps for all employees. The result is stable, fast and efficient IT solution for day-to-day business problems.
django-gearman-commands 0.2 released
We’ve released new version of django-gearman-commands, open-source library integrating Django and Gearman server.
- support for task namespacing
- support for foreground jobs
As usual, you can find it on GitHub.
django-gearman-commands 0.1 released
Gearman is open source job processing framework and server. We use Gearman at CodeScale quite extensively for background job processing in Django applications. We wanted to make development with Django and Gearman server easier than before. For more information visit django-gearman-commands on GitHub.
django-pybrowscap 0.9 released
For more comfortable and standardized usage of pybrowscap in django we have managed to come up with django app called django-pybrowscap. It is basically a single middleware that initializes, searches and reloades browscap data. For more information visit pipy or github pages.
CRM for FIRMUS a.s. goes live
After months of development CRM system for our new customer, FIRMUS a.s., is ready for everyday use. Our mission was to analyze and implement custom CRM solution perfectly tuned for customers workflow focused on productivity and simplicity. Read more about use case.
django-profiler 1.1 released
This new version of django-profiler package contains basically the same functionality as the older version, but the core was completely refactored. @profilehook decorator was removed from the codebase, due to packaging problems on newest linux distributions. Python core modules cProfile and profile were used to bypass @profilehook dependacies and @profilehook code was merged into @profile decorator. Code also uses core python modules written in C primarily with fallback to standard python modules e.g. cStringIO vs StringIO. For more information visit pipy or github pages.
pybrowscap 1.1.2 released
Release has improved code stability, more effective algorythms and exception handling. kinpoo patches solving more precise matching of user agents are included. For more information visi pipy or github pages.
FFmpegPHP 2.6 released
We have just released new version of FFmpegPHP project. Release contains multiple fixes and enhancements proposed by the community. It is tested against latest revision of ffmpeg binary.
So I would like to use this opportunity to thank all the contributors. Keep up the good work !
log4mongo-python 1.1 beta released
Lately, too many people have been asking, how to extend/modify log4mongo-python (mongo handler for python logging) handler to log custom or contextual information. Do they need to extend the formatter class or somehow modify the handler itself ? As of this release, these questions are no longer relevant. New version 1.1 now contains full support for logging contextual information. You can decorate logging event with additional contextual information very easily. For more information how to do it visit log4mongoor page.
For the last year, we have been developing an online trading tool forcompany. As you can imagine, performance is primary factor. We spend a lot of time on various code and SQL optimizations. Three months ago, we came to the point, we realized that further optimizations will not be possible without strong profiling tool. We spent a couple of days testing various profiling tools, but none have met our requirements.
- profile specific fragment of code, its speed and number of queries it executes
- profile specific function or methods
- output the profiler information via standard logging facility
- incorporate the profiler code with minimum effort
- easy integration with django project
- easy integration with non django codebase
So, eventually we ended up writing our own profiler, specifically designed for our needs. Here is some more information extracted from README file:
django-profiler is util for profiling python code mainly in django projects but can be used also on ordinary python code. It counts sql queries a measures time of code execution. It logs its output via standard python logging library and uses logger profiling. If your profiler name doesn't contain any empty spaces e.g. Profiler('Profiler1') django-profiler will log all the output to the profiling.Profiler logger. @profilehook decorator uses profilehooks python package to gather code execution stats. Except it logs via standard python logging it also outputs code execution stats directly to sys.stdout.
pybrowscap 1.1 stable released
We have released another stable version of pybrowscap package with multiple bug fixes. As we use this library in our web based django projects, we had to come up with the mechanism to reload the Browscap class instance with new data without django project being restarted. This version contains implementation of this reloading mechanism. You can learn more about pybrowscap at pypi homepage.
log4mongo-php in log4php core
Log4mongo for PHP has made it into the latest stable version of log4php. log4php is a PHP port of Log4J, the most popular Java logging framework. It was a long and difficult journey, but it was worth it.
FFmpegPHP version 2.5 released
We have been working very hard to bring stable release finally to the public. Version 2.5 doesn't bring any new breathtaking features. The only feature worth mentioning is custom autoloader, for lazy loading github.com, phpclasses.org or our new codescale pear channel.
What is FFmpegPHP
FFmpegPHP is a pure OO PHP port of ffmpeg-php writter in C. It adds an easy to use, object-oriented API for accessing and retrieving information from video and audio files. It has methods for returning frames from movie files as images that can be manipulated using PHP's image functions. This works well for automatically creating thumbnail images from movies. FFmpegPHP is also useful for reporting the duration and bitrate of audio files (mp3, wma...). FFmpegPHP can access many of the video formats supported by ffmpeg (mov, avi, mpg, wmv...)
pybrowscap 1.0b released for public
If you're developing web application, you may want to detect what web browser (User Agent) is accessing your application. Detecting it manually can be very painful a frustrating. And this is where browscap csv files. Feel free to test it out, and please report issues if you find any.come into game. It can detect thousands of known User Agents and associate every User Agent with features it supports, it can determine if it is a web crawler, syndication reader or the classic web browser. Current version only works with
Partnership with Canonical Ltd.
CodeScale is now
We are proud to be closer to Canonical that develops Ubuntu Linux which is our primary operating system for both desktops and servers. We aim to provide even better service and support for our customers via commercial support packages. Ubuntu Advantage gives us new options to connect directly to Canonical's experts.
New version of OpenPaste.org
After two years of considering reviving OpenPaste.org project we finaly decided to act. New completely reworked version of Openpaste is online. Absolutely new layout, suitable for screen and mobile devices makes working with OpenPaste a pleasure. This first release is pretty basic and allows users to paste or upload their code fragments in various programming languages. Codebase is based on django and pygments frameworks.
- fixing bugs in first release
- making post modifications
- making and applying diffs from posts
- user management system
We just launched our new website for CodeScale s.r.o.
Our goal is to present our work, services we provide and to get in touch with customers with interesting projects.
Working on eTender Trading Product
We are privileged to work on solution managed by our customer,
eTender is online trading platform designed to provide software solution for custom auctions in real time.
We are currently working on performance optimizations and improvements in database layer to bring better response times of application.
New releases of Log4mongo for Python and .NET
New versions of Log4mongo open source libraries are released.
Python library for Log4mongo reached first stable version 1.0 after several months being used in production in our solutions.
.NET library was released in 0.7 version, adding support for official MongoDB database driver.
We are happy to bring yet another improvements in Log4mongo project to community.
New generation of FARAON Real Estate System goes live
began using properties management system developed by CodeScale created specifically to meet customer requirements.
We were fully responsible for analysis, architecture and implementation of system, including migration of data from legacy database. We are also providing customized hosting based on Ubuntu Linux platform. Transition from desktop-based software to web solution means more freedom to customer in how application is used. New solution reflects real-world business workflows and adds unlimited customization options. We are constantly working with customer on improvements and new features.