How OBVIOUS things get missed to be done... or seen...

Happy New Year!..

Oh my bad! I missed to post here that I made a Grant proposal.

It often happens. It obviously happens so obviously often during the last 15-20 years that the other day a guy (C# programmer) on Facebook commented: "CMS in Perl?!? "It will scale with your business" hahahaha". We obviously miss to say explicitly obvious things.

Yes, he does not know this is just a "Piece of cake" for us. Yes, it is so much "Piece of of cake" that almost nobody in the Perl community bothers to do it. Yeah, we have CPAN, we have CPANTESTERS, We have tied variables that some languages find very cool and trendy, and we even find them old fashioned, We are modern, we have Mo /o /se, ORMs and all the stuff, BUT "We suck at marketing".

OK, let us stop saying this and start doing things, the obvious things. Like writing a book for doomies, like a CMS (just using the acronym), as PHP community does. Like many CMSs, so many that when searching the web one can find more written in Perl than in ... some other languages.

I know we have enterprise-grade systems. I know. Everyone of us knows what he/she is doing at work what tremendous amounts of data Perl is capable to process. How it scales, how even amazingly stupid Perl code amazingly works, etc., etc...

Now, I am trying to mitigate/fix/repair (what's the word in English?) my mistake - the fact that I forgot to post here. There are five days or something left for the community to comment, let us help the Grants Committee to vote.

BEAUTIFUL. We should make the things to look beautiful. Why do we ignore so often this? Is there anyone who feels he is better designer than coder among us? Please come and help to make it beautiful. Go look over the web, steal ideas, inspiration... Suggest! I will do my best to find and choose one (why not two or more) default theme for the site area which does not suck. No, it must be beautiful. It should be so beautiful that... one decide to download Ado. (TODO: Write a tutorial about how to make/install themes in Ado) (WTF is this name? "Additional Day Off"? yes, no, see http://www.thefreedictionary.com/ado)

EASY. We must make it easy to install/deploy. So easy that any casual kid (one of those who call them self programmers after making his first site with Joomla or WordPress) can enjoy it, using his cheap shared hosting account, managed by cPanel.

PROFESSIONAL. We must keep it professional, keeping clear the path to growth. That is why Ado is based on Mojolicious. That is why it can be split in modules, which can be installed from CPAN, automatically get test reports from http://www.cpantesters.org/. Setting and imposing rules. That is why we used Perl::Critic (and may be soon could switch to Perl::Lint) while developing.

TINY. We should keep it tiny -- just a wrapper -- and later use whatever we decide is helping us from CPAN to integrate trough our plugins.

I could as well base it on Dancer if several years a go I had chosen Dancer. You may choose Dancer for your simple-to-use-install-and-extend web-framework with-user-interface. Do it!

I applied for the grant to force my self to do it. With whatever help and deadly constructive criticism from you - the more the better.

Extended Rules to support Modern Perl in Atom symbols-view package

Somehow long ago I wrote some additional rules for Perl in my .ctags file and published it. I even invited you to help improve and polish it or simply use it and modify it as you wish.

Recently I tried the Atom editor which is very trendy now.
I was happy to find it uses Exuberant Ctags and the rules in my ~/.ctags file just worked.
Then …

YAPC::EU is over. Everybody is back to their realities. Ado continues...

YAPC::EU is over

Благодаря ти Марияне, че направи това събитие истина! - Thank you Mariane, for making this event true!

Many of the the recorded videos of the talks are on Youtube already.

I met splendid people there. Yet once again my doubts about the vitality of this community showed to be pointless. And it is hard to understand how it continues to exist without a giant company to push the technology behind it further.  Yes there are companies that supported the event. The technologies them selves (http://www.perl6.org/ and http://www.perl.org/) however exist and evolve thanks to enthusiasts from the community. The Perl Foundation helps a lot.

Everybody is back to the usual activities

Me too. It is great that some companies recognize what we do and share (even be it minimal) part of their enormous profits. Most of the companies using the technology just take. Most of us work for such companies. So even those companies give back "unconsciously" by paying our salaries. But we decide what to spend some of our free days for.

What we (those of us,

working for such companies) could try is to improve the development process in a way to make it possible in-house improvements and fixes to modules we use to go back to the source on CPAN or at least GitHub.  And then back to your code again after upgrade. Tools for managing local repositories are available and Stratopan is there already.

A first step would be to make the employer upgrade to a recent version of Perl. And it takes lots of bureaucracy to even make them hear you. What can you do when they tell you "the risk is bigger than the expected benefits"? How to persuade them that the benefits are bigger actually? How to persuade them that by not upgrading you just add technical debt. Until someone with a fat salary and highly in the feudal hierarchy (Thanks Curtis) comes and say: "We will move to .Net or Java or..."? This happens just because this person have read somewhere those trendy sequences of symbols on a beautifully looking site with a known logo on it. Or most probably will get some percentage of the next big deal...

I want to know how to persuade the business people to invest something in the technology they use and abuse for free.

The only way I keep and can improve my coding and software development skills is by writing Open Source Code and reading on-line. (Some of us are lucky to have this as part of their daily job.)  But I am stubborn and continue...

Ado continues

I will continue with news about it. This was my first YAPC and I dared to present it. From the video tough it is not easily understandable for the uninitiated what I am talking about. I consider this my fault. Next time I should request longer time for the talk. Add more examples. Point with finger in the code, the file tree. Explain how we are forcing the developers to write code that will live longer. Explicitly state, propose and invite people for discussion on the development cycle. Etc., Etc...

And now I have to go and fix my breaking tests after the last Mojolicious upgrade. This still happens from time to time, but having most of the written code covered with tests makes it easy to upgrade and synchronize with Mojolicious.

Be healthy.


Ado? What is it?

For the last several months I had some more free time during the long (for me) nights in Central Europe. I didn't have to work any more additionally to cover some expenses. Having done several projects on Mojolicious, looking at the code, I clearly saw same patterns — repeating over and over again — in the code of my projects.

I had also, I would say, successful previous open source project on GitHub (which code had the same "issue" and some more), but I just left it after som…

To evolve or not to evolve?

What would you do when you try to improve the development process and it seems not to work for months?

Small tasks, (and not so small) and everybody is in a hurry to solve the next one and does not want to see the big picture, which is:

If we share code (via - o no! - a code repository) and reuse code via CPAN (o no again!), inheritance and OOP (o no, what the!..) and it really looks like you hinder the work of colleagues if you try to explain something more than "this regular expression"?... Yet you are supposed to do so...

At the end of the day the business people w…

About Krasimir Berov

user-pic Perl and Bulgarian are my native languages. I naturally read and understand most Slavic languages like Russian, Serbian and recently Czech... as well as I write JavaScript, HTML, CSS, SQL...