Project management tools are tricky. First, developers tend to despise them when they perceive them as too bureaucratic and interfering with just getting work done. Managers tend to love their flashy dashboards and charts too much, substituting actual productivity with some easy to digest but ultimately meaningless metrics. I’ve been struggling for 14 years to […]
About Armand Niculescu
As the Senior Project manager, Armand is one of the rare kind of developers that can do both design and programming with equal skill. This, coupled with a solid background and many years of experience, enables him to see the big picture and plan for the small details.
Entries by Armand Niculescu
Unlike CSV, fixed-width text files don’t use a separator to differentiate between fields. I’ll show how you can convert such a file in all major programming languages.
This little tutorial is intended for those learning Python and demonstrates a number of features, including OS-independent file manipulation, email parsing, string formatting and error handling.
With everybody using grunt.js for linting, css compilation and minification nowadays, I wanted to make a simple experiment and see if I could do the same using a plain batch file – in Windows no less. Turns out some things are very easy and some quite tricky.
As the complexity of today’s sites increases, so are the challenges to keep the site loading fast and bandwidth usage low. Minified scripts, concatenated CSS, image sprites and even hand-crafted static html are used for speedy delivery. This article discusses some less-known features of nginx that can lead to significant speed increase.
Union Platform is powerful and easy-to-use multiplayer server written in Java. By default it uses an embedded Derby database. In this article I’ll show you how you can replace this datasource with a MySQL one and how to process the database with minimum downtime.
Have you ever wanted to take a noiseless landscape shot in low light but didn’t have a tripod with you? Got frustrated while trying to get a macro shot into perfect focus? Or have you ever tried to photograph some landmark but those pestering tourists kept getting into view? I bet all of these happened to you too. What do these problems have in common? They can all be fixed using the same basic technique, so today I’m going to show you how.
While most casual photographers still shoot in JPEG, there’s no denying that RAW gives unparalleled control. And what’s really exciting is that with each new generation of software, the processing becomes even more powerful, allowing one to revisit old photos and get even more “punch” out of them. In this article I’ll review the best new RAW processors: Adobe Lightroom 4, DXO 8 and Capture One Pro 7
One annoying scenario is when you let users enter their names and then you need to output their names nicely, for example in a newsletter. Some users simply enter their names in upper/lowercase, but obviously when you address them you can’t do the same. On the other hand PHP’s ucfirst() and ucwords() functions are too naive for proper capitalization.
A while ago I wrote an article about the common pitfalls of handling file downloads in PHP. One thing I did not realize at that time is that in most cases developers don’t have the time to write such a script and they’ll use whatever they can find, even if it has flaws. Because of this, I decided to write a download script and release it free for everyone with a BSD License. It’s not a class, just a script that accepts a “file” parameter via GET or POST and outputs the file. For security purposes any paths are stripped and replaced with a path in the script (the folder containing the downloadable file(s) should be protected against direct access).