A daemon in Unix™ and similar operating systems, is a background process, which runs without using the terminal or the X11 system as main I/O system. In other operating system, this is called service. A daemon has a very specific tasks to do, for example the NTP daemon keeps your computer date updated connecting to NTP servers. Many applications that require asynchronous tasks, require this kind of applications to make your life easier. For example a job queue processor for the Gearman job server can be handled with this kind of applications.
web developer & system programmer
coder . cl
ramblings and thoughts on programming...
writing python daemons
published: 12-05-2012 / updated: 13-05-2012posted in: development, programming, python, tips
by Daniel Molina Wegener
my software design principles
published: 05-05-2012 / updated: 06-05-2012posted in: development, haskell, java, programming, projects, tips
by Daniel Molina Wegener
Most modern applications are providing APIs. That allows you to integrate those applications providing APIs with third party applications and create a real cloud computing environment. From an architectural perspective, we should have at least to have in mind the architectural pattern to be used, design patterns to be implemented, the protocol to use and the data format to expose the API. The architectural pattern should be simple, the design pattern efficient, the protocol lightweight and the data format flexible for your requirements. With a good API design, it should be stable enough to support changes along the time dynamically.
how important is to optimize haskell code?
published: 02-05-2012 / updated: 03-05-2012posted in: development, haskell, programming, tips
by Daniel Molina Wegener
Programming in Haskell is cool. You have various functions and abstractions to work with. But it has several considerations to have in mind once you are programming in this language. The main one about its performance and memory usage — in my opinion — is where to place lazy evaluated expressions and where to place strictly evaluated expressions. There are various articles with very good recommendations, but I want to show you a practical example, where you can see how effectively is used the lazy evaluation and released in a good execution point of the example program.
the self-criticising programmer
published: 28-04-2012 / updated: 02-05-2012posted in: development, programming, tips
by Daniel Molina Wegener
I am a self-criticising programmer. But I think that I know my self in deep. I know my limits, how much can I bring, how much can I deliver. I know both very well. Along the time, being self-criticising is not about being masochist on thoughts, it is more like being reasonable, thinking on how to solve problems reasoning rather than using something like trial and error methods — usually described as «the process of learning where doesn’t happen from failure itself but rather from analysing the failure, making a change, and then trying again». Instead of failing, I try to solve problems analysing them.
freelance project handling rules
published: 21-04-2012 / updated: 21-04-2012posted in: development, programming, projects, rants, tips
by Daniel Molina Wegener
As you know I work as freelance programmer, I have handled many kinds of projects, you can see the list of technologies which I am offering on my services page and some sample products which can tell of what I am capable to do on my products page. As you can see, I have left some technologies, like PHP, due to the poor budget on many of those projects and messy code that I have seen on them. Since PHP lacks some tools like static analyzers and style checkers, most PHP projects cannot ensure good quality.
project euler: problem 102
published: 20-04-2012 / updated: 20-04-2012posted in: development, haskell, programming, tips
by Daniel Molina Wegener
I have started my own solutions to the Project Euler in Haskell. Just to practice Haskell and its features. The past problem was the problem 255. Now I have solved the problem 102, using some additional features, not taking the problem as it comes in the Project Euler. Rather than doing a simple solution in plain text, I have created a program which renders the triangles in the problem using OpenGL, placing the triangles in a Windows rather than just indicating the number of triangles.
all skills comes with interests
published: 15-04-2012 / updated: 15-04-2012posted in: development, programming, projects, rants, tips
by Daniel Molina Wegener
As you know I was working for various medium companies along my career, until I have become a freelancer. In one of those companies, where most programming contracts were made to Informatics Engineers as Software Engineers as role. You expect at least from a Software Engineers the capacity of doing research on almost any topic related to the given programming task and a very good quality solution to the given problem. That was not the case always, as it happens on many areas, not only in software development. Today I will present a story illustrating how something what is done without interest will make you waste your time and money.

