web developer & system programmer

coder . cl

ramblings and thoughts on programming...


a good start on logrev

published: 17-03-2012 / updated: 17-03-2012
posted in: development, haskell, logrev, programming, projects
by Daniel Molina Wegener

As you know ApacheLogRev or logrev as short name, is my first Haskell FOSS project — I have other FOSS projects written in C and Python — and I want to share some experiences about logrev while I was developing some features that it should have in the future, because it is still under development and it is not finished yet. Basically, it is using the Parsec combinator based parser. One of the best advantages of this parser builder is the fact that it is generating parsers on run time, rather than creating fixed parsers using BNF grammars which are subject of static context free processing, rather than creating dynamic parsers.

the logrev design

published: 04-03-2012 / updated: 04-03-2012
posted in: development, logrev, programming, projects
by Daniel Molina Wegener

On March 2th, the past Friday, I have released the initial code for a new FOSS project. The current code is hosted at github. LogRev is a log reviser tool, it extracts statistics from — currently — the Apache Access Logs. The initial design only supports few grouping queries but how it was coded will allow some interesting features that I will explain in this article. I hope that you will enjoy the design of this tool.

effective communication in development

published: 25-02-2012 / updated: 25-02-2012
posted in: development, programming, projects, tips
by Daniel Molina Wegener

Communications is one of the most important elements on any development project. Project specification, customer relationship, project documentation, and almost all elements on a development project are involved in good communications to make it a successful project. How the project manager controls the project and their developers, and how the account manager delivers the product to the customer can make your project a successful project only if you have good communication basis.

where can I work?

published: 24-02-2012 / updated: 24-02-2012
posted in: development, programming, projects, tips
by Daniel Molina Wegener

Passionate programmers are always seeking a good place to work, with good and nice programming languages and very good expectations. «Where can I work?» Is one the biggest questions that someone can ask to himself. There are big companies almost everywhere, great corporations where you can build up your career. But you should be able — as developer — to see your environment. Big companies, like retail ones, are not hiring developers directly, with some big exceptions like Amazon, but it is a foreign company, so most of those big companies are using outsourcing and externalizing their development services.

haskell and emacs

published: 20-02-2012 / updated: 20-02-2012
posted in: development, emacs, haskell, programming, tips
by Daniel Molina Wegener

I think that I have a very nice integration between Haskell and Emacs. The first stuff that you should do to work with Haskell under Emacs, is to integrate the haskell-mode in Emacs with the proper hook to get the haskell-mode fully functional and working fine with Haskell code, so you can use Emacs as most likely an IDE rather than a simple text editor. That can be done thanks to the powerful Emacs Lisp interpreter that has embedded the Emacs editor.

challenge 2012.02.13 intermediate

published: 14-02-2012 / updated: 14-02-2012
posted in: development, haskell, programming, tips
by Daniel Molina Wegener

Here is the another combinatorics challenge with a level intermediate on the programming forum. Still I think that they are very easy to solve. Here is the solution in Haskell, where not real combinatorics are required to supply a solution, instead word elements are used as numbers to find word matches in the text file, without too many libraries and lines of code.

combinatorics problem in haskell

published: 12-02-2012 / updated: 12-02-2012
posted in: development, haskell, programming, tips
by Daniel Molina Wegener

Here is another challenge called difficult, but seems to be quite easy to solve. It is a simple feasible operation search algorithm between lists of numbers, so it is not so complex to solve and took few minutes to get it working on Haskell, because Haskell provides various tools to work with algorithms. Also this solution does the extra credit, no matter if the list has up to four integers.