English readers and other languages: Many posts are in portuguese, you can use the Translate button at left side.

Clique nas imagens dos artigos! Elas levam você para o site do artista que a criou e muitas
vezes tem assuntos relacionados ou outras imagens para expandir seus horizontes!
Mostrar mensagens com a etiqueta Desenvolvimento. Mostrar todas as mensagens
Mostrar mensagens com a etiqueta Desenvolvimento. Mostrar todas as mensagens

terça-feira, 24 de janeiro de 2017

The Numerology for 2017

Photo by: Rynn (Nightfest)  - USA

The Numerology for 2017

Note: this text will receive some revision in the next days.
(Last edited Feb,9,2017)

We started 2017 with many world events happening, but most was expected, like events in the politics areas, companies doing this or that, people arguing about so many different ideas.

In practice I won’t say thing are not changing. Be sure things will always will change. But the direction is not due global events, as they in practice started at each one acting into his/her personal world and that added to others until that result in big movements.

Everything Is A Cycle
Art by Teagan White - USA
There are cycles in life:
Natura non facit saltus! From Latin: “Nature does not makes jumps!”

This to remember all natural things and change gradually with time. Season's cycles, people you knew and become an adult and you was unaware of it. The tree you saw as a small herb in the middle of the grass grown and now have fruits.

Most of times people does not pay attention to all intermediate events happening, just remember a previous time until something happens and they discover to be far away from the source events.
Each year is just a continuation from the previous, with some remainder energies and new incoming events that will be affected and be observed in different points of view just because you are also changing.

Some background: 

I had commented for years about my vision on the numbers for each year, and glad almost everything I told have been right, including the income years like after that 2012 apocalypse time.See the 2012 Numerology.

That time I was pointed to talk about some future world events. I had commented more at the forums too. Even if I don't like to do any kind of prophecy, I had to do that time as a strong warning and most to people at spiritual areas, mainly the ones at higher levels, because the decades and even two centuries to come. The world is going into that and each year we see that more and more.

Just to remember, we are going each year more and more into the mixing of many practices and religions with other ideas and concepts. Each year information is easier to get anywhere and even the most remote places will be affected someway due this.
And this is not only in the spiritual areas, but also at politics, science, culture, etc. At all places people are collecting information and using it someway, creating some good mixes, but some others not so.
Even at some very fanatics areas we see they using new resources and methods that are against even their self-proclaimed principles, just with the excuse of something be needed. Just hypocrites and opportunists.  
For example, in my country we have a lot of evangelic churches and many of them have been using practices I recognize at once as proper from the African Traditional Religions. Modern practitioners of the traditional areas of Western Magic also have been using methods and techniques from very different sources.No need to cite the cruel terrorists who use anything to show they are just cowards.

In the next years, politics, technology, science, etc. are going to become to be confuse areas too. We’ll find many of them adopting practices from other areas and many, even if with a sincere desire to do the good for others, in practice results in more problems that people are not thinking about just because they does not observe what is the real source of such things.

Art by Mario Sánchez Nevado - Spain
As 2017 is a number 1 year, we'll see more of this at both sides: some people will be more on acting than thinking while others will be "doing" instead of just acting.  
There are many examples at many areas. At technology companies we'll see more and more a stagnation due some company leaders looking only for gain and lacking to care the minds behind the busines. It's just a matter of times of busines collapse due lack of knowledge. If you don't preserve the professionals who know how and what to do, be sure the newbies will not replace them just because they won't find people to teach them. Newbies can be cheap, but are the olders who keep business with a background and able to be moving.

The spiritual confusion also acts at the society level, I say not just the magicians and witches, but every common people is under such mixing of ideas and practices. Remember most people even without any kind of spiritual practice, are most of times ruled by them. Even if they are not part of some religions, the leaders, business people and governs, most of all times have guidance from people at the spiritual and magic areas. 
The result will be a confusion and that in no ways will be good. We are going fast into a kind of spiritual dark age and in my point of view, in just one more decade things can be really very worse.

This is why I pointed that time to the higher ones to become prepared to support people, to be able to be a light to others and be able to fight against the confusion and work to restore a better level of consciousness but this also will need some decades more.

So let's be moving to act with creativity and to develop our lives!

And now at 2017 we are entering again is a number 1 year, a time for action, changes and even new cycles.
Like the others, this is not a numerology study for each people, but it is about the global energies around for this year, so each one may have an idea how things at global levels will be acting so they can think better how to deal with that.

Even if the energy is global, still you have to work locally, as an individual. No matter what you do, even if you are the President of a big company, a farmer or a salesman, you have your own path and the way you care of your life is what matter.
Each one have a personal path. So in the same way the personal numerology is different even for people who born at the same day as commented at previous articles. You have your family and geographic/social influences acting. Who you was at previous lives, the kind of activities you will be attracted for, your personal evolution. All this matters.

This is one reason why I add comments about the personal numerology at the full readings I do, as the way I work, is not only the Tarot. In practice, I use often use both techniques as I’m talking about how the person is and how that numbers affect the way each event is perceived and how to deal with that. So for sure, the ideal is each one have a personal study for each year, to have a specific analysis of the energies and have better ideas about how to deal with that.

To repeat, no matter the main year number, each one have their own ways to deal with that and a personal path.
This 2017 year will be again a strong example to deal and observe.

The Numbers for 2017

In the numerology 2017 will be a number 1 but this time, not only a simple number 1.

In my vision this year is a pure number 10 (2+1+7=10 an then 1 + 0 = 1) and this add a lot to events and powers related to world events under the western calendar.

Note as in numerology, we sum all digits until get a result. For some years we'll get for example (19 so 1 + 9 = 10 and only then 1 + 0 = 1). But some at some years we have a direct 10 at the first sum result and this is the difference. In this example, I would study the 19, not the 10.

A pure 10 is a powerfull number for any enterprises, at any area. Be personal, companies, countries, etc.

This means I pay special attention to a pure number 10.
The previous one was 2008 (2+0+0+8=10). Just remember how many global changes happened and the results of that we see until today. Many companies and countries even recovered or was able to deal with the changes because that time. See the comments about the spiral of evolution later to get more about this.
We usually see comments about the numbers 1 to 9. But there are some specials. And the number 10 is one of that.

Let’s comment first the basic aspects of the number 1. This is what most people will get.

The 1 means action. To make. To do.
And the number 1 is the start of a new cycle.
What new cycle and action have in common? A new cycle is a movement, the initial step that need to be continued. So this means action.
In general, the 1 is a new cycle of events and related to the learnings of the previous year, always a number 9 when we had plans do make, choices to complete.

Things start at the number 1 and grown each year until the 9 and energy will change the way each personal aspect and life events receive different energies and also change perceptions about the multiple life’s aspects.
For sure new beginnings can be changes in life as the previous are complete or reached the point for a new goal.
Is always good to re-evaluate your goals and this is a good time for this and act.
Sometimes what is needed is to face your fears and change the way you see that.

The same way the number 1 is very positive, due the action power, it also have a negative aspect: to be unable to act, let fears take control even become rigid and this is something that can last for a long if not changed.

So the first idea is about a year about acting and for new beginnings. Finish with the old behind and continue for evolution.

Action At All And With All!

Plan A
Image by Essa Al Mazroee - United Arab Emirates
Now some about action in my point of view.
I repeat often, I'm not a scholar. I'm a practitioner.
For sure I read a lot, search a lot of antique material, even do a lot of research to decode ancient practices.
I just have not "that" patience to make all that compilations and write nice academic works.
I write the same way I speak in public. As needed, I go after some source to cite, but nothing more most of times.
I like to be in the front area, working, acting. I'm a kind of warrior.
I'm glad to see how many fantastic works our modern scholars have presented.
And the ones I respect more are working really hard in the practice too. 
It's just a matter of choice.
One and other time you will find a text of mine a bit more at that level. But it's rare.
I realy love to find the energy moving, to be at any time and at each day working.

Salute the new day, care of home and pets while doing a prayer, talk to neighbors and seeing how to help on their needs, observe how the clouds are moving and calling some deities about it, taking the needed time for university lessons, preparing material for a ritual, commenting to some people about how to deal with this or that, doing your job. All this is action!

Whatever you do daily to to improve your life is action!

See, just to repeat the same is just keep the same.
Work to do it better!
I do my bread for three decades and I'm not satisfied! I'm not a good cooker. Because this sometimes I have a needed rest and buy ready bread. Then after a time, I get the work again, study what I'm doing wrong and move again to do a better bread.
Most of of times I do a very good bread, but sometimes that's goes wrong. And some goes very wrong! LOL...   So I work to see what I changed to make it better.
I'm not after a bread of acceptable quality as most do. This is easy, just repeat the same recipe and never try something new.

Get this? Just to repeat is not action. That is only simple repetition.
I'm not after that!

Just to repeat is the same as never learn and never have a real action!

If you want a real result, your action must start at 100% as I learned in the 90s.
You need commitment as a main part of life and spirtual development.
You must action by yourself, never because someone.
The only real commitment is with your own development, your own spiritual evolution. 
That is all counts in life.

The difficult thing is to value this and who maintains their commitment.
Many large companies lose their best employees every day because of this.
Thanks for the comments I had received in years from people of value, yes, I really did all those things spoken in the lectures and a lot more one and other time I cite about the fantastic experiences I had.
I'm not after fashion social aspects nor Harry Potter fantasy tales.

What you have to get is the action energy to reach the real goals you pointed.

How Jupiter would appear at our horizon.
Art by Ron Miller - National Air and Space Museum’s Albert Einstein Planetarium.

What are your goals?

This works the same way in magic and for any area in life.

A common phrase we see a lot, is "all fingers point to the Moon".
But why the Moon as you can point your fingers to any planet and star?
You may be serious to point and do all the needed action to reach your goal!

The fingers are not important. What matter is the goal!

This is again the energy you got from this 2017 year, a number 1 presenting lots of opportunities to grow your life acting to reach higher levels.

And here about scholar work.
They do a great job, be sure.
I repeat, thanks to all the good scholar ones and more to all the good practitioners ones!

But to be in the working area, to be a practitioner after results is not the same as just being a scholar or a simple airmchair one. 

There's the needed theory and the more needed practice.
We are part of the whole magic world. 

Even the best scholars I know who also are practitioners can't assure results in magic.
I knew fantastic cookers who did even a bread very wrong, like mine! And be sure they are people I fully respect.
This is why as anything in life, nobody can assure results in magic!
It's impossible!
We deal with our own aspects plus all the others people events.

Citing Aleister Crowley "Every man and every woman is a star".
We are around a very small star, our Sun. 
Think we have billions plus billions of stars and galaxies just in the visible area. Each one is so diferent going to the most absurd level of our humble idea about the Universe.
Think the energy the people far away, around the giant stars may have!

Just think on this: we are part of a small solar system, in the remote border of this Galaxy.
Now think there are places in the Universe where the lowest energy they know is what we see as being the most sublime Love.
For sure there are placer even darker than here, but let that out as the most evil idea is far away from that.

Action is a power to increase, develop, to make.

Work to do!
Act using all your learnings each day to make it better.
Act to study and discover new horizons!
Act to be free and someday, you really become a true Star in this universe!

Now let's comment some aspects of the number 10.

As a kind of primary master number, the 10 means an entire cycle happening at once.
We have the power of the number 1 for "to do".
The number 10 is the big action, the enterprise level of events at any area.

To make it simple, a cooker with the number 1 will learn to do good food, even will have a restaurant. But a cooker with the number 10, will create a food company, or became a master chief even with a network of good restaurants.
A musician with a number 1, will learn to play well and be a good musician. The number 10 will become a great maestro or make new music style.

For sure there many other ways the combination of different numbers in the personal numerology will also result in big works. This is just one.

When the number 10 happens, it brings more power to drastic changes, big inventions, large steps ahead at any area.

This will be a year for big events, big works happenings. For good or bad.

And big works won't be invisible.
We'll see big companies growing due good products the same way we'll see other big companies going into big disasters. Both sides of the same energy.

The ones with big tasks todo will face a lot of such events. Not all good, not all bad and many in the middle area.

A negative aspect of the number 10 in a personal numerology is this can even lead lack of scruples. Which means that some will use this energy to achieve great results regardless of who they are going to harm and how they did it.

In a global scale, the same negative aspect will be working at some big shit happening. 

But again, none of this will be invisible. Big names will be exposed due the good or bad acts.

The Spiral of Evolution

The ideas of the numbers 1 and 10 are related with life cycles too.
There are many cycles in life. The wheel of the year, the seasons, the personal life, our planet moving around the Sun, etc.

The idea of doing something must be with the intent of complete the task.
And doing a task is a minor cycle as part of others major cycles. 

If you go to the school, each year is a cycle while the complete degree is a major cycle.
If you have bad results at the final exams each year, you may repeat all that again until you are able to level up to the next level until you finish the course.

For sure there are many types of cycles, some last seven years, others like the numerology is just 10 years, others are the centuries, etc.
The most visible is the annual cycle of life.

Another interesting example, is the seven years cycle of life:

People at the ages:
  • 0-7 are babies. 
  • 8-14 are children. 
  • 15-21 are teenagers. 
  • 22-28 become adults. 
  • 29-35 are mature. 
  • Then the cycle start again but in my point of view with a difference. The cycle start at children level: So at 36-42 they become children again and want explore everything as new. 
  • 43-49 they become again teenagers. Just remember the famous 40's crisis. Due the same reason, is very common to many women at this phase to be very closer to thir daughters about men, sharing clothes and even disputing atention from guys. 
  • 50-56 a new adult time when people create and are very productive. 
  • 57-63 the second mature phase. 

Here things change again, and the new cycle start at teenager's time!
  • So 64-70 is common at some places such people just wanting to be very social. Parties and all that stuff. 
  • 71-77 to become adult again.
And so on.
For sure, the previous idea add life experience at each level. And as noted, at each new level, that start one point following the sequence until at final, the only repeating is the mature level.

Do the work or you will have it again!

Not all people pay atention why some events in their lives appears to repeat.
A simple example is someone who jump from one love relationship to another and have the same kind of relation as before. Such people didn't learned and still keep after the same type of people.

When you complete a cycle, if you have not changed nor leraned, this means you will be at same level as before.

With no evolution, after some time events will just repeat, again and again.

But when people learn, grown, change their lives for better, they will level up, so after a time, when the cycle reach the same point they will be in an above level, and this makes the cycle become a evolutive spiral moving upwards.

Note, you still will be near the same places, but looking from a higher point of view. This is learning and developing conscioussness.

The previous two examples makes better to understand about the importante of doing and being responsible for your own acts.

Note: some people may fall in life. What they choose to do will lead for a decreasing spiral. This is not related to life concerns, but with the prsonal learnings and choices in life. Such ones at end of each cycle will fall more and more. Usually they are the ones who seek the evil in life and work only for destruction. I won't discuss such ones more.

New cycle, work to level up!

So the most important energy for a new cycle is to make, moving up!
So a number 1 year presents lots of opportunities do changes, start new activities, complete at once the previous and move forward.

This means power to strong transformations at all areas, personal, science, politics, economic, etc.

And due the power of the number 10 this add the idea on the upward spiral cited above.
The ones who level up, will have a wide vision, from a higher point of view. This is why many will comment this is a year for more spiritual awareness and development.

But remember I cited before about mixing of practices.
So at the same time many people will work more and better for spiritual development, at the same time, some will be mixing practices and instead of real growing, they will creating more confusion and the results won't be as the expected.

The more important is to know your own resources and develop yourself to make better decisions and act with a clear view about your life and the others.

Actions in this number 10 will be many times very strong.
So we can expect drastic events resulting from people and even governs works.

As we had many global changes in 2008, be sure many will be happening, but this will be different.

Many changes will happens like at once, but if you remember the cycles, and observe the previous events, you will find many of them was presenting to happens while others will be like decisions done under pressure.
The number 1 is not a "think so much" number. Is an "action" number. This is why many acts will appears to be choosen in an instant. And many will be so.
This is a reason for the importante of some spiritual development and to the people in the higher levels to pay more atention to others.
In no ways this means normal people may become a monk, each people have a personal path. Just will be very good for both sides pay atention to others.

With a bit of care, we'll see many progress, but at the same time, lower levels may be so closer due blind fast acts.

So is better to remember about the spiral of evolution and work the best at your own area to improve what you do, developing counsciousness and increasing life quality.

Use the energy and Go! 



quinta-feira, 18 de julho de 2013

Software - Simplificação Inteligente é Trabalho do Desenvolvedor

As fotos mostram um belo exemplo de design bem bolado. 
Software bem feito também pode ser assim.
Multiplo by HeyTeam

Software - Simplificação Inteligente é Trabalho do Desenvolvedor

Em resposta ao artigo "A Dificuldade da Simplificação", de Letícia Polydoro publicado no site Baguete. 

"Menos é mais. Esta sábia frase foi dita em 1919, por Mies van der Rohe, sintetizando a filosofia da renomada escola de design e arquitetura alemã Bauhaus que fez história. Que impacto teria essa frase dita por um arquiteto do século passado nas nossas empresas de tecnologia atuais?"

Meu comentário

Simplificar é agregar inteligência ao sistema. Acho muito oportuno os comentários sobre a tendência dos programadores, quanto a colocarem excesso de recursos de software numa mesma tela, ou num mesmo programa.

Excessos de mecanismos são prejudiciais, tanto quanto a falta de funcionalidade que observamos em muitos sistemas.

Um programa inteligente, ou que utilize conceitos de sistemas especialistas, deve ter previsão no seu funcionamento para executar, sem esperar pela solicitação do usuário, muito mais do que os tradicionais 10% a 20% (quando muito) do que a ampla maioria dos analistas e programadores fazem.

Infelizmente por aqui, o nível de requerimento das empresas para gerar bons resultados desenvolvendo recursos melhores para suas atividades fim (ou seja gerar lucro ao invés de só cuidar de economizar papel higiênico), costuma ser tão baixo quanto seu descaso em formação de equipes e estrutura adequada. Mas continuam gastando fortunas em propaganda para fingir que são modernas, mostrando até Ferraris quando só querem pagar por fusquinha para não gastar nem com água.
Não existe milagre no desenvolvimento de software profissional para gerar verdadeiros e bons resultados. E não adianta ficarem publicando aquela tantos estúpidos artigos sobre "falta de jovens talentos". Tradução: querem novatos sem experiência mas que sejam gênios de nascença (existe um a cada 10 milhões talvez) e com o poder de um deus e com salário de faxineiro. Por favor me desculpem os zeladores que cuidam de manter nossos ambientes limpos por favor.

Desenvolver com inteligência deve ser abrangente tanto em termos do que é o mínimo a fazer (nem isto vemos tantas vezes), seja otimizando a navegação entre campos, telas, etc., seja efetuando pré-processamentos, ou por outro lado, realizando uma grande quantidade de tarefas pela dedução (mecanismos de inferência) das atividades e passos complementares que o usuário vai realizar, o sistema deve fazer mais com menos.

Mas também, lembremos que fazer mais na interação com o usuário, também deve seguir um conceito de “menos é mais”. Eliminar interações desnecessárias, atuar como um expert na atividade que realiza, são atributos de um programa inteligente.

Uma interface bem feita é importantíssima. E fazer com que esta interface tenha um funcionamento de alto nível, é mais ainda.

Existe uma relação inversa entre cada recurso que o programa disponibiliza facilitando a vida do usuário e a quantidade de trabalho de programação necessária para criar seu funcionamento. Ou seja, quanto mais simples (e poderoso) para o usuário, a tendência é de que haverá muito mais trabalho para o programador.

Existe certa resistência entre trabalhar para criar soluções inteligentes de software, amigáveis ao usuário final e, desenvolver objetivando facilitar a vida do programador ou de usar aqueles recursos que este está interessado.

Devemos lembrar, nosso trabalho é para o usuário final, não para nós mesmos. Imagine um restaurante em que o cozinheiro tende a ignorar o gosto dos clientes, e impor seus gostos pessoais, mesmo que o restaurante acabe ficando quase vazio, ou que o pessoal da cozinha nem consiga limpar os pratos depois.

É importante interagir com os usuários para avaliar suas necessidades. Mas também, pela experiência, aprendemos que apenas reuniões não fornecem tudo que precisamos saber. Um certo distanciamento, como apenas estar por perto, observando o que os usuários realmente fazem quando estão por sua própria conta, fornece muitos pontos importantes.

Outra coisa importante de lembrar, é que o processamento faz parte da interface, tanto quanto quaisquer retornos fornecidos ao usuário. Uma mensagem de erro que não seja extremamente clara e precisa sobre o ponto e o que causou um problema, é inútil.
Inclusive, neste aspecto, tratamentos de erro devem ser inteligentes sim! Veja, voltando para o exemplo comparativo do restaurante, boa parte dos programas que vemos por aí, servem arroz queimado para o cliente. Se o cozinheiro viu isto, deve por sua própria conta preparar outro arroz, trocar os pratos e servir o cliente, e também avisá-lo sobre a demora se for o caso. Um programa razoavelmente bem feito tem que ter estas características.

Dá trabalho? Sim, dá muito trabalho. Mas este é o meu trabalho e a minha opinião. Eu não acredito em fazer “programinha” e tenho pavor de trabalhos sem um pingo de acabamento ou interfaces precárias. Acredito que nossa área é trabalhar na interação Homem X Máquina e que isto faz parte do processo de evolução social, econômica, científica, enfim, de tudo em que poderemos realizar e melhorar com a utilização dos computadores.

Nosso trabalho é criar boas soluções, dentro é claro, dos recursos disponíveis, mas que devem ser necessários para o que se pede. Não existe sistema de grátis, assim como nenhum restaurante distribui comida. Pode ser um sanduíche, mas pode ser bem feito e ter um guardanapo para acompanhar.
Se o cliente do restaurante deve pegar uma mesa, buscar as cadeiras, levar o pedido na cozinha, comer qualquer coisa que seja servida, ou então receber a comida numa dúzia de potinhos separados e ainda descobrir que é ele quem tem de lavar a louça porque o pessoal da cozinha não gosta, é algo de se pensar. Vemos isto acontecer em software a toda hora e é preciso melhorar. Temos excelentes exemplos no mercado internacional, e não estou falando das megacorporações de software.

E também é possível fazer tanto trabalho de forma simples. De que adianta tantos frameworks se isto não for usado justamente para otimizar a qualidade e a produtividade? A barbaridade que virou o uso da linguagem Java é um exemplo catastrófico de como conseguiram piorar toda experiência acumulada por décadas com o Cobol. Cada empresa tem uma "coisa" tipo framework de Java que não tem nada a ver com o resto. Todo mundo quer sentir-se importante inventando mais um framework apesar da solução já existir por toda parte. Mas não. O ego, a vaidade tem falado tão alto que é realmente uma temeridade olhar cada nova proposta na área. 
Não está na hora de pararem de reinventar a roda o tempo todo?

Mas mesmo assim, se usarem inteligência aquela coisa que faz parte do cérebro, (sim existe algo dentro da cabeça, acreditem), pode-se criar grandes resultados, com simplicidade. Mas é preciso pensar, estudar, aprender sobre interações humanas e empresariais, observar o mundo ao redor.

Um software simples de usar pode ser não tão trabalhoso de fazer. Mas se tiver que ser que seja, mas também, já como o alicerce para um próximo passo em que podemos utilizar aquilo que aprendemos e realizamos. Ou seja, um trabalho bem feito, mesmo que difícil, vai facilitar o que for feito depois.


quarta-feira, 14 de outubro de 2009

Prestação de Serviço

Gerar novas sementes, criar novos sistemas.
Foto: Altus

Como trabalhar sempre é bom, aproveito para fazer um pouco de "shameless self-promotion" (auto-promoção).

Na área de informática:

Desenvolvo sistemas sob encomenda, soluciono coisas complicadas, otimização de performance, tratamento de grandes volumes de dados, migrações, recuperação de dados, etc.

Trabalhos que precisem de um elevado grau de detalhamento e complexidade, qualidade, técnicas de inteligência artificial, interação em alto nível com usuário (sistemas easy to use), performance elevada, atender necessidades especificas ou que não tenham similares, etc.

Alguns sistemas que trabalhei são PCP de Vestuário (chão de fábrica), Advocacia Tributária, aplicativos Ms-Access com programação VBA avançada, SPC, Patrimônio, ERP, Administração, etc.

Meu portfólio de ferramentas é bem abrangente. Não sou casado com nenhuma tecnologia, o que me permite escolher o que achar mais adequado para cada situação. Tenho ampla vivência com Ms-Access, VBA, PHP, JSP, Java, Ruby, Python, Clipper, Cobol, Accell, etc, etc

Na área humana:

Os vários artigos do blog apresentam meus trabalhos em várias áreas como ocultista, e estes ensinamentos fazem parte do processo da vida humana, seja pessoal, seja profissional.

Uma empresa é um organismo vivo e interage com  todos seus membros, portanto podemos ter diferentes abordagens que nos forneçam diferentes visões para pesquisar e buscar melhores níveis.

Busco a evolução como caminho lógico para todos os seres que desejem encontrar e buscar seu caminho.


quarta-feira, 30 de setembro de 2009

Funcionar não significa bem feito (nem seguro)

"The Fabric of Clouds"
Foto himitsuhana (Chiara Fersini)

Estava lendo o blog do Jeff Atwood e encontrei este post:

"As a software developer, you are your own worst enemy. The sooner you realize that, the better off you'll be. In fact, that's the tipping point between amateurs and professionals in our industry: the professionals realize everything they write sucks."

O texto comenta sobre fazer as coisas bem feitas, ou resolver na base do "remendo" (gambiarras).

Logo adiante, um visitante deixou esse comentário bem pertinente:

"MarketGarden: That is why we do not hire programmers unless they have 5 years of experience. Its money well spent as we do not have to deal with any snot-nosed punks who think they know it all, but obviously do not."

Um pouco irônico, pois nem todos novatos são punks, muitos são da geração-saúde ou mauricinhos (risos).
Mas concordo com o tempo mínimo para alguém (na média de 99% do mercado) começar a ter condições de programar decentemente.

Isto não é ofensa para ninguém, pelo contrário. Se assim fosse, a faculdade de medicina liberaria todo mundo para fazer cirurgia cardíaca logo no primeiro ano, e o tempo de residência clinica deixaria de ser obrigatório.

Ninguém nasce sabendo. Eu também já fui novato. Eu também já quis ser expert em tudo que havia. Mas independente do meu talento natural precisei estudar e praticar, e nunca mais parei de me atualizar. Também precisei viver e conhecer as pessoas e tornar-me adulto. Tive como colegas vários profissionais muito bons, que foram meus mentores, e estimularam o gosto pela pesquisa, atualização e principalmente fazer seu serviço bem feito!

É necessário ter autocrítica. Claro que às vezes uma gambiarra resolve o problema. Mas ficar meses e meses empilhando remendos ao invés de reescrever o código que está errado é perda de tempo e dinheiro.

Escovar bits em excesso é uma coisa nem sempre necessária. Mas procurar trabalhar sempre com capricho e boas técnicas é essencial.

E principalmente, gostar de estudar.

Someone may tell me why in our country, every job advertisement ask for english but in 99,99999% nobody is able to talk with english with me, nor at interview, nor daily?

Tradução: Alguém me diga por que em nosso país, em qualquer anúncio de emprego pedem inglês, mas em  99,99999% das vezes praticamente ninguém da empresa é capaz de falar em inglês comigo, nem na entrevista nem diariamente?



sexta-feira, 11 de setembro de 2009

Programador também faz POG

The Duck Tape Programmer
Foto: Graeme - New Zealand

A POG, Programação Orientada a Gambiarra, possui diversas formas de implementação.

A escolha da abordagem mais adequada, é geralmente na base do que funcionar primeiro. Por incrível que pareça, na programação POG, o que vale nem sempre é o menor esforço, pois o que está em jogo é o resultado e não a capacidade do programador entender o que está fazendo. Isto inclui também, os misteriosos problemas no kernel ou nas ferramentas de desenvolvimento e softwares de terceiros, para os quais, nem sempre o fabricante fornece suporte adequado.

Vejamos alguns dos tipos de POG mais encontrados:


De fácil compreensão, esse recurso é largamente utilizado, caso um valor não seja atribuído a sua variável durante a execução de um programa por algum problema desconhecido pelo programador POG. Assim em vez de perder horas e horas debugando um programa, através do altíssimo nível de programação orientada a gambiarra, o programador POG atribuiu um valor na base da porrada e o programa roda livre e sem bugs. É claro que de tempos em tempos esse pequeno ajuste deve ser mantido.

Programação Orientada a Estagiário

Consiste na capacidade do analista de sistemas sobrecarregar o estagiário ou o técnico mais próximo com todas as suas funções, desde interação com clientes até desenvolvimento de casos de uso e bancos de dados, aproveitando ao máximo toda a energia gambiarrizadora que essas categorias possuem. Sabendo que fica mais fácil para o programador entender e realizar a POGização do sistema se ele conversar diretamente com o usuário, o analista sabiamente permite que o programador realize os contatos com o cliente, permitindo assim que o analista realize funções que condizem mais ao seu cargo, como acessar a desciclopédia, ficar o dia inteiro na cantina ou ir puxar o saco do chefe, por exemplo. Além do mais, o contato do programador com o usuário economiza papel e tinta de impressora, pois a parte da documentação impressa é nula, já que o analista não participa do processo e assim não gera as toneladas de folhas com diagramas e especificações. O acoplamento do sistema é muito maior, pois foi desenvolvido por uma única pessoa, facilitando na manutenção, pois existem poucas classes para serem modificadas (no máximo cinco, para programas muito complexos).

Apellation Number Technic

É um método muito utilizado por MVP's (MOST VALUABLE POGrammer), que resolve 90% dos BUGs sem que precise queimar nenhum neurônio. POGramadores experientes sabem que: Deu um BUG no sistema? Digita -1 em algum lugar que funciona!!! Ainda não se sabe o motivo, e nem precisa saber. apenas funciona e pronto.

Static Spree

Um dos patterns mais utilizados da POG. O objetivo desse padrão é que tudo fique visível em qualquer canto, porque private é coisa de gente sem vergonha. Também conhecido por Public Static Spree, pois comumente tudo é feito "public static".

Imagem: Dom Herms
Public Global Access

Pattern que simplifica o desenvolvimento eliminando todos aqueles métodos de acesso inúteis, tornando todos os atributos acessíveis globalmente, diminuindo a quantidade de lixo no código. Apesar da semelhança com o Static Spree, os atributos não precisam ser static.

RCP Pattern

Significa Reuse by Copy-and-Paste (Reúso por Copiar e Colar). O RCP dita que, na pressa, quando não dá pra fazer a coisa por herança, basta copiar e colar, quantas vezes for necessário. Em geral se espera que futuras alterações sejam feitas por outros trouxas, digo programadores, perdão. Os trechos de código são copiados de todo e qualquer lugar possível, geralmente de outro programador (muitas vezes o estagiário) ou código da internet, para criar partes funcionais do programa. Utiliza-se a do "Ctrl+C" e "Ctrl+V" para juntar as partes e adaptá-las para funcionar, por tentativa e erro. Leva um considerável tempo para se adaptar o programa, e um número absurdo de compilações, mas pelo menos pode-se dizer que foi você quem fez o código. Este pattern também é conhecido como "Contra o C e Contra o V".

BCDR Pattern

Black Cat in a Dark Room (Gato Preto em um Quarto Escuro). Consiste em criar métodos que recebem apenas um parâmetro (um Map em Java ou um params em .NET). O argumento que você precisa está lá dentro, mas você não sabe exatamente onde. Esse padrão permite passar quantos argumentos forem necessários a um método, sem poluir o código. Permite criar métodos cujas assinaturas seriam, de outra forma, extremamente longas . Evita a alteração de assinaturas de métodos no momento da manutenção do código, fazendo desnecessário qualquer tipo de refactoring.

Há registro de programadores de Black Cat in a Dark Room. Um exemplo complementar é o parâmetro String[]:

Um exemplo prático é o sistema de gerência de Mensagens do Windows.

User Friendly Exception

Consiste na padronização de todas as mensagens de erro do sistema para uma única mensagem amigável ao usuário. Um sistema 100% compatível com esse padrão, nunca trava nem encerra de forma inesperada, mas apenas não atende ao usuário exibindo uma mensagem do tipo "Caro usuário, tente novamente observando as regras de uso do sistema". Observação: Trata-se da evolução de um padrão amplamente utilizado em sistemas Microsoft com mensagens "Catastrophic Failure" e "Unexpected Error".

Exemplo de implementação em Java:
public static void main(String[] args){
while (true) {
  try {
       } catch (Throwable ex) { // qualquer erro do sistema cai aqui
      // só pode ser culpa da besta ignorante do usuário
      System.out.println("Caro usuário, tente novamente observando as regras de uso do sistema");
      // após a mensagem, o while(true) garante a robustez do sistema que nunca aborta!

Chaotic Experimentation

Padronização de construção de funções para continuar a executar o programa mesmo que dê pau em alguma rotina. Exemplo clássico: On Error Resume Next (Visual Basic).

Controller Confusion

Tática que permite uma menor escrita de classes no sistema. Consiste simplesmente em eliminar o M do padrão MVC, ficando um padrão muito mais legal - o VCC ("View/Controller Confusion", ou "Vai catar coquinho"). Alguns tem sugerido inclusive a eliminação do V - ou seja, ficando apenas o CC (Codigo coco para os usuarios mais intimos) - a lógica, o modelo, os templates, o HTML, tudo e mais um pouco dentro do controller confusion. Como você pode ver, o padrão cêcê faz jus ao nome.

N.M.L. Combat Action POG Pattern

É um Design Pattern POG ousado, moderno, revolucionário e NÃO-EMO. Os arquitetos emos e POGuistas ADORAM, junto com seus miguxus, incrementar suas frameworks utilizando MUITAS camadas, geralmente desnecessárias. A N.M.L. (No More Layers) aborda uma estrutura onde todas as regras de negócio, validação (client e server side) e acesso à dados estão na tela! Para que Facades, Commands, Bussines Delegate e outras viadagens EMO detonando a performance da aplicação? Manutenção? Não é necessário, pois quem domina e faz uso dessa técnica modesta e humilde produz códigos Chuck Norris Style, ou seja: PERFEITOS. Esse paradigma está amplamente difundido por programadores VB e Delphi, e tem migrado com sucesso para a plataforma .NET, porque o que importa é a beleza da tela, e não a tecnologia que está por trás!

UFB -Uso de Força Bruta

Método muito famoso no meio dos programadores POG.

O método se aplica para solucionar problemas sem perder tempo voltando no código para procurar onde deu errado.

if (var==20)


Strombolic Bridge (ou, DRIBLE DA VACA)

O Paradigma Strombolic Bridge (Ponte Estrombólica) ou mais conhecido no Brasil pelo Pseudonome de "Drible da Vaca" é uma evolução do já consagrado BRUTE FORCE. Consiste em alimentar uma variável global que será utilizada dentro de algum método, mas certificando-se de que seu valor inicial será retornado ao original após o uso dela pelo método. Por exemplo:
varTemporaria = varOriginal;
varOriginal = "NovoValor";
varOriginal = varTemporaria;

Reparem que, tal como o "Drible da Vaca":
- A varOriginal dá um 'totózinho' lateral do seu valor para a variável temporária,
- Recebe o novo valor que será utilizado pelo método,
- (corre) e recebe de volta seu valor la na frente...
Não tem erro.... assim você sempre terá certeza que o valor original será sempre o mesmo !!!

Space Kick Pattern

Consiste em ir chutando pro espaço, até acertar e a coisa dar certo!

Abstract Observer Pattern

Método para dar manutenção em código POG. Você observa um monte de gambiarra, mas abstrai e considera a coisa como funcional.


O texto acima está com algumas pequenas modificações e acréscimos feitos por mim. O original foi encontrado no  Blog Mundo .Net do Constantine

Related Posts Plugin for WordPress, Blogger...