Posts Tagged ‘doesn’

Windows XP multicore not detected after CPU update – XP Enable multicore after singlecore install

Friday, April 8th, 2016

windows-xp-add-multicore-with-command-after-multiple-cpu-not-detected
These days it is not common to install Windows XP however for some old unsupproted applications that still work on XP in many countries  in Africa, Asia, Europe and even America. Custom patched Windows XP is still heaveily used for some corporate businesses in accounting and on airports and other government institutions even to these day, I'm aware of Windows still heavily used especially in  Russia, Belarus,Ukraine, Kazakhstan, Armenia, Bulgaria etc.

Hence still there is plenty of softwares designed to work XP the good old Win XP and thus often XP needs to be emulated on VMs though officially not supported any longer  by Microsoft (its Support lifecycle End was for a last time on April 14, 2009).

Now I guess these days I guess nobody doesn't install and use Windows XP on a normal hardware PC Desktop / laptop but XP is continually installed on Virtual machine servers VMWare / VirtualBox.

Hence if you happen to have already migrated or installed some old Windows XP operating systems under VMWare for a corporate clients single core machine (no matter virtual or physical) and the client requires an update of hardware of the Virtual Machine you will be surprised that even though you add a second / third etc. core (new CPUs) the virtual machine hardware and restart the Windows XP installation.

It seems XP is designed to remember the install time CPU model hardware so once the VM and doesn't have a way to update its HAL (Hardware Abstraction Layer) definitions if you install it in Virtualbox thus to make XP recognize the extra added CPU cores it is necessery to do a small hack with a devcon.exe utility downloadable from Microsoft site to do the trick

1. Download the command line devicemanager utility (devcon.exe) from Microsoft Development Network MSDN here.

Note that it will work only if you use the correct version depending whether XP is  (x86/x64) bit install so check it out from My Computer -> Properties.

windows-xp-multicore-not-detected-enable-add-multicore-after-singlecore-windows-xp-install-with-devcon-exe

2  Next. Execute the following 2 commands:

    devcon sethwid @ROOT\ACPI_HAL\0000 := +acpiapic_mp !acpiapic_up
    devcon update c:\windows\inf\hal.inf acpiapic_mp

devcon.exe will  let the automatic hardware detection find out the extra CPU (multicores) added.
Wait 'till you get prompted for a reboot.
Be brave Reboot! 🙂

There is pretty much more fun useful things you can do with devcon.exe such as disabling USBs from command line,

DEVCON-command-DisableUSB_on-windows-xp-7-8-howto

listing your PCI devices and so on:

devcon-windows-command-to-list-pci-devices-on-xp7-win8-win10

You should now see all cores, hooray cores will appear in Task Manager / System Information.

How to check Apache Webserver and MySQL server uptime – Check uptime of a running daemon with PS (process) command

Tuesday, March 10th, 2015

check_Apache_Webserver_and_MySQL_server_uptime_-_Check-uptime-of-running-daemon-service-with-PS-process-command

Something very useful that most Apache LAMP (Linux Apache MySQL PHP) admins should know is how to check Apache Webserver uptime and MySQL server running (uptime).
Checking Apache / MySQL uptime is primary useful for scripting purposes – creating auto Apache / MySQL service restart scripts, or just as a quick console way to check what is the status and uptime of Webserver / SQL.

My experience as a sysadmin shows that lack of Periodic Apache and MySQL restart every week or every month often creates sys-admin a lot of a headaches cause (Apache / NGINX / SQL  server) starts eating too much memory or under some circumstances leads to service or system crashes. Periodic system main services restart is especially helpful in case if Website's backend programming code is writetn in a bad and buggy uneffient way by unprofessional (novice) programmers.
While I was still working as Senior SysAdmin in Design.BG, I've encountered many such Crappy Web applications developed by dozen of different programmers (because company's programmers changed too frequently and many of the hired Web Developers ,were still learning to program, I guess same is true also for other Start-UP Web / IT Company where crappy programming code is developed you will certainly need to keep an eye on Apache / MYSQL uptime.  If that's the case below 2 quick one liners with PS command will help you keep an eye on Apache / MYSQL uptime

 

ps -eo "%U %c %t"| grep apache2 | grep -v grep|grep root
root     apache2            02:30:05

Note that above example is Debian specific on RPM based distributions you will have to grep for httpd instead of apache2
 

ps -eo "%U %c %t"| grep http| grep -v grep|grep root

root     apache2            10:30:05

To check MySQL uptine:
 

ps -eo "%U %c %t"| grep mysqld
root     mysqld_safe        20:42:53
mysql    mysqld             20:42:53


Though example is for mysql and Apache you can easily use ps cmd in same way to check any other Linux service uptime such as Java / Qmail / PostgreSQL / Postfix etc.
 

ps -eo "%U %c %t"|grep qmail
qmails   qmail-send      19-01:10:48
qmaill   multilog        19-01:10:48
qmaill   multilog        19-01:10:48
qmaill   multilog        19-01:10:48
root     qmail-lspawn    19-01:10:48
qmailr   qmail-rspawn    19-01:10:48
qmailq   qmail-clean     19-01:10:48
qmails   qmail-todo      19-01:10:48
qmailq   qmail-clean     19-01:10:48
qmaill   multilog        40-18:02:53

 

 ps -eo "%U %c %t"|grep -i nginx|grep -v root|uniq
nobody   nginx           55-01:22:44

 

ps -eo "%U %c %t"|grep -i java|grep -v root |uniq
hipo   java            27-22:02:07

 

Useful abbreviations for people working in Corporations like HP, IBM and Dell – Things New Comer should know on company onboarding time

Friday, January 23rd, 2015

useful-abbreviations-for-new-comers-things-to-know-on-onboarding-period-in-huge-corporations-as-HP-IBM-Apple
If you have worked in a small or middle sized company and you're offered work into some of the top 100 world corporations, prepare yourself for some shocking 3 to 6 months depending on the company. This period in which you will be introduced to the company's field of business and way of work is called in corporate terms OnBoarding period.  Even if everything looks to complicated and obscure, don't be quick to loose yourself or desperate as this is just a new beginning and as any new beginning it is hard. However once you're acquainted with basics it will be much easier for you.

After all most of the new things you will learn in Corporate Environment are just the good old ones you know already packaged under a different wrapper. You will be introduced to many portals, client names, have to watch a lot of  "brain-dead" trainings, which told you basics on Corporation and its client essentials, be offered ways to advance, have to request Accounts and Credentials to servers via some obscure procedures, which change all the time, so it is likely the procedures you have to follow to get the necessery network / server accesses will be a procedure different from the one your colleagues followed few years ago, thus probably you will have to do account requests for a first time.  In this on-boarding time you will deal with a lot of trainings teaching you to be ethical, respect your co-workers, learn basics of inter-cultural awareness and learn to get responsibility for your actions and some specific training regarding the job position (job description) you have.

onboarding-color-diagram-yellow-red-green-blue-onboarding-corporation-best-pracices-and-advises

You have to be patient and non-judgemental and ready to accept situation as it is and not be angry that so many people doesn't have idea on what is happening. Also it is a good start-up corporate advice to respect people's knowledge, don't thing that you're too knowledgable, as you will be amazed that there are a lot of people in huge companies which have better understanding and knowledge on tech than you. Also realize, the confusion that is taking place in Huge companies "The Right hand doesn't know what the left hand is doing", as our CCL Kalin used to say. The corporate world is a world where way of work is very different from tiny companies, you will have a chain of managers on top of you. The huge companies world is a world of big fish players ..

onboarding_to-big-company-howto-cycle_diagram

It is normal that in the first weeks / months you feel overwhelmed because of too much information and all looks too difficult, however just don't worry and go on. Now all is hard but in a few months everything comes to place and you realize in reality all is easy and it just seems hard in the beginning.

It is a good thing that you use the "Induction" / Onboarding period of first few months to find to make as many contacts as possible as this will be of a great help in your later job time. Get in contact with people from Database / Database and Storage / Load Balancers / Networking / Firewall Teams / Managers / Delivery Leads – the rule here is the more, the better.  If you want to grow in the company's scale making social contacts is even more important than being a hard-worker. If you have friends in management of company and you do your work well and try to be proactive, sooner or later your managers will notice this and will recommend you for some kind of manager position.

employee_onboarding_process-in-large-companies-visualized-pic

Here's few abbreviation meanings, you will have to learn if you will have to work some kind of system administration or support work for a Hewlett Packard.

Microsoft Products – For people coming from Linux / UNIX background, the induction (onboarding) period into a large corporation is even more complicated because if you have been accustomed to using Open Source OS and tools in large corporations you will probably have to do a lot of things with proprietary tools which are hard to run on Linux / *nix, therefore it is good practice if you intend to work for Biggest Organizations in the world to get used to either running a MS Windows 7 / 8 into a Virtualbox or VMWare or get used to using Windows as a Desktop environment. Once you enter the huge organization it is likely you're handed in with your working notebook, shipped with a Customized Windows install to work well with the corporation where you're onboarding. However companies like HP did a great job, because they offer Ubuntu / Debian / Scientific Linux distributions tailored with most tools you will need for normal daily work, so it is not necessery to use Windows (though I find it personally much easier) to use Windows as  desktop nowadays.
I really don't like running 20% of applications in Virtual Machines and doing occasional work-arounds to make things work. After all life is complex enough …

 

Microsoft Lync Communicator – This is the defacto standard program still used in corporation for internal VoIP / Video communication , One of coolest Lync feature is Sharing Screen. At any time you can share your screen (thing like you have installed teamviewer), give-control to remote party, you can share screen between multiple people and it is pretty much like a shared desktop conference, really useful! However sometimes when Internet is slow or network is failing occasionally MS Lync gives worse results than TeamViewer, so having TeamViewer just in case is useful too. Lync works making the VoIP connection by using some Exchange Mail server integration.

MS (Outlook) Calendar – Calendar is one of the top things you have to know to organize meetings with clients and colleagues to discuss various project aspects, server problems or just ask a question your Solution Designer regarding some server Environment designed by him .

MS Outlook – All mail communication is primary using Outlook Express, you can add Tasks, Contacts and set Calendar meetings with it. If you're like me and coming from UNIX world and get used too much to Mozilla Thunderbird, you will be in big shock until you get used to work with Outlook, not that it is difficult but it is quite different from Thunderbird. For efficient work with Outlook Mail you will have to learn creating Outlook Filters and Outlook Mail backups as often mailbox is just 1 or2G  and mailbox fills in for a year time.

Monitoring Software IBM Netcool or something a like – Servers and services will be monitored with some kind of tool whose basics you will have to learn, if you have worked with Monit / Nagios or Munin you will quickly grasp the basic concept

MS Office / MS Project – You need Word and Excel quite often and for sysadmins this is very irritating. All office and client documents will be exchanged in Word and Excel format, if you're a Project Manager you will need heavily use of Microsoft Project too which needs to be installed additionally as it does not ship by default with most MS Office / Windows installs.

MS OneNote – is a software like notepad supporting tabs and allowing to make notes which are stored to a SharePoint

SharePoint (SP) – in large companies they like placing things into Sharepoints so a lot of the documentation is found on some random sharepoints (this is like a Directory Listing Apache server) – very annoying as it is really chaotic – I don't like it.

CMO – Chief Marketing Officer

CMO – Current Mode of Operations

FMO – Future Mode of Operations

SMO – Separation Management Office / Separation Management Officer

WFH – Work From Home, mail header message aiming to report someone is going to work from his home during the day

CFO – Chief Financial Officer

CEO – Chief Execute Officer

PM – Project Manager

FCR – Firewall Change Request (Any new or old firewall rule nr. which has to be created / modified / deleted)

RTPA – Ready to Production

ORT – Operational Readiness Test (some basic tests to be made and documented), before a server is handed in to RTPA

HPSM – HP Service Manager (a ticket / change web desktop frontend)

Change – a ticket like ID and system which has to be used necessery to describe any server config / file / service modification

Ticket – A support ticket oped in case of some emergency with some server service happens

CI = Configuration Item
Instance – Any service that is running more than once on a server lets (say 2 MySQL and 2 Apache servers) running on same server on different port numbers will be 4 instances

LB = Load Balancer (Load Balancers include capabilities of Intelligent Switches are in essence routers which can balance load ovr number of hosts running different services in order to ensure traffic received to a service is balanced between members of a cluster most often they're Active and Standby. Different methods to load balance traffic exist round-robin etc., traffic to Apache / MySQL / PostgreSQL and virtually any service could be load balanced.

SD – Solution Design / Solution Designer (The person preparing the graphics and documentation for how a combination of servers environment will be operating)

MTR – Maximum Time to Repair (Maximum time to repair client service or env, lets say 2 hours / 5 / 10 hrs)

SLA = Service Level Agreement (Agreement document between Company Corporation and End customer about services / servers or any work to  be provided under what conditions and cost and time interval. In short SLA is a contract document between Corporation and customer.

Service Window – Mon – Fri 08:00 – 17:00 (The time in which server is on active support and will has to be repaired by a support team promptly if emergency occurs)

TOP Process – Turn to Production (The processes which PM follows, before project turns to production TTP).

Top Approver – The list of people involved in project which has to approve the Top process until set as completed.

DL / CCL – Delivery Lead / Collaboration Capability Lead / Client

Capability Lead – This is a job position one step behind a Team Manager. DL's goals are to help teams manage internal issues and deal with clients requests, next to doing some minor technical job. In short this position is like a Junior Manager (or a position which is held before), people emerge to Team Managers.

TDL – Technical Delivery Lead

Prod or just P env – Production environment (if many servers) or P server if it is single one

QA env – Quality Assurance (something like a testing environment or server)

UAT (User Acceptance Testing) / Test server, env – UAT is the last phase of software testing process.
During UAT, actual software users test the software to make sure it can handle required tasks in real-world scenarios, according to specifications.  UAT is also known as beta testing
Test server usually same configuration as Prod whose purpose is to test new releases before deployed to Prod environment

DNS Internal / External record – (Whether DNS is seen only in a client local network (from Internal DNS only) – its called Internal record, External record is when a hostname is resolved from all the Internet)

EMEA – Common Abbreviation for: Europe, Middle East Asia sometimes to mean Europe Middle East, Africa

DC – Data Center (location) in some address room / rack numbers etc.

SN – Serial Number (Serial number of server or hardware  component

DB – Server Database (DataGuard is Oracle Db special solution for synchronization of databases for higher Db protection)

Security Class – The levels of security of access to a server (Different countries and Unions legislation world-wide require different rules and regulations on server security).
Examples of Server security classes are: White, Grey, Black (servers). For example according to EU legislation Black servers
can only be administrated / managed by people originating from
same country as where server is physically located.

Digital Key / (Digital Certificate) / Active Identity – This is a Flash drive USB (storage) with installed digital certificate which is used to authenticate you to internel corporate network
 

PC COE – PC COE –  is a set of services and tools that has helped HP reduce its desktop computing costs by $200 million per year. HP also establishes a new organization within the HP OpenView division to market TCO solutions. From PC-COE you can install almost all proprietary software for free and use them for your daily work. The software comes with free Licensing for internal HP Use.

Junos Pulse / Remote Access to HP Network – Dynamic SSL VPN Connectivity at most companies  to access a corporate network you connect via some encrypted VPN client, some companies probably use OpenVPN.

Citrix Receiver – Citrix Receiver is the easy-to-install client software that provides access to your XenDesktop and XenApp installations. With this free download you can access applications, desktops and data easily and securely from any device, including smartphones, tablets, PCs and Macs


Above terminology is specific to HP however, most of the terminology and procedures during onboarding time (period) should be very similar or even the same for other of the Top 100 Largest Companies by Revenue such as:

IBM, Dell, E.ON, Apple, Samsung, Toyota, Daimler, Gazprom, RosNeft, Volkswagen Group, Honda, AT&T, General Motors, Allianz, LukOil, Carrefour, Siemens, BASF, Philips, Ford Motor Company, Koch Industries, Tesco, Royal Dutch Shell, BP, Chevron, Vitol,  SK Group, Verizon, General Electric, Wal-Mart Stores, Nestle etc.

Probably there are things I'm missing so, if there is something else you have learned understand during onboarding, please share it in comments!

That's it, Happy Onboarding !!! 🙂

Origin of Halloween (All Hallows Eve) or the Day of All Saints is actually Christian

Thursday, October 30th, 2014

 

 

The-Christian_Original-of-Halloween-Cross_on-a-pumpkin

 

 

Many people would "celebrate" Halloween today, however many don't know or understand the true feast origin. It would probably news to many that halloween that is today so much associated with satanism, evil spirits and horror has christian origin! Here is what wikipedia States about Halloween quote:
 

The word Halloween or Hallowe'en dates to about 1745 and is of Christian origin. The word "Halloween" means "hallowed evening" or "holy evening". It comes from a Scottish term for All Hallows' Eve (the evening before All Hallows' Day). In Scots, the word "eve" is even, and this is contracted to e'en or een. Over time, (All) Hallow(s) Eve(n) evolved into Halloween. Although the phrase "All Hallows'" is found in Old English (ealra hālgena mæssedæg, all saints mass-day), "All Hallows' Eve" is itself not seen until 1556.

 

All-Saints-day-Latin-Roman-Catholic-icon

Before Christianization of Western societies – e.g. Irish, Old English, Scots and the other Gaelic nations, in Ancient celtic traditions Samhain (celebrated at end of October) give the beginning of the Celtic New Year. Celts believed that the spirits of the dead over the previous year come to roam the world looking for living people to possess. As a mean of protect Celts put on their face animal skin and other objects in order to be as scare as possible to drive out spirits from themselves. The Celtic people of Europe and Britain were pagan Druids (priests / educated people) whose major celebrations were marked by the seasons. At the end of the year in northern Europe, people made preparations to ensure winter survival by harvesting the crops and culling the herds, slaughtering animals that wouldn't make it. Life slowed down as winter brought darkness (shortened days and longer nights), fallow ground, and death. The imagery of death, symbolized by skeletons, skulls, and the color black, remains prominent in today's Halloween celebrations.

seasonal_activities_medieval_seasons_calendar

The "Samhain" season used to be a favourite times before Christianization and (even by some witches, later haunted by Inquisition) for occult practices such as divination and communication with the dead. They sought "divine" spirits (demons) and the spirits of their ancestors regarding weather forecasts for the coming year, crop expectations, and even romantic prospects. Bobbing for apples was one practice the pagans used to divine the spiritual world's "blessings" on a couple's romance.

Interetingly in Eastern Europe countries, there is similar traditions in multiple countries – e.g. Romania, Moldova Serbia, Greece, Macedonia, Croatia even in my own Bulgarian culture we still have regions celebrating similar pagan feast, on whose feast KukeriKukers are called the dressed people in the form and masked as scary beasts with horns dance on the streets in hope to drive away with their awful looking outlook any "evil spirits". Kukeri traditionally appear still in Eastern Bulgaria, the feast has been known to have origin from Thracians.

kukeri in Bulgaria Shiroka Lyka

It is intriguing that since, even very ancient times people believed in immortality of the human spirit and this is not coincidence, because from ancient times people know "instinctively" the soul is importal and life continues on after physical dead of the body.

The modern version of Halloween celebrated mainly by kids wandering the homes of neighbors with the question "Trick or Treat?" started being marked in that way in England, Belgium, Germany, Austria and Italy at least as early as 15th century.
Traditionally groups of poor children would go to homes collecting the so called soul-cakes (special burned small breads) made as an aim of remembrance of the Christian relatives who passed away – it was a very widespread custom to give food to strangers as a mean of charity  just like it is still in Orthodox Christian countries, we give away food to strangers as an aim to remembrance of our departed (and forgiveness of sins) to our relatives.

Halloween-christian-tradition-soul-cake-with-Cross-on-it

In the Middle Ages, churches displayed the holy relics of martyred saints for veneration and those parishes that were too poor to have relics let parishioners dress up as the saints instead a practice that some Christians continue in Halloween celebrations today.

Cross_and_Halloween_origin-of-feast

Unfortunately the Christian root of Halloween tradition gradually mixed with some of the old still not completely forgotten beliefs of paganism in pre-christian times and with the gradual raise of materialism, the protestant reformation, the enlightenment, the french revolution, the world wars etc. this mostly Christian traditions loose their Christian ground and left mostly its pagan element.
After Christianization of Europe from the 9th century onwards the Church, pagan traditions continued to be practiced by many, probably because the Church "mass" language and preaching was in Latin, people doesn't have bibles and many even baptized doesn't really had a good knowledge / understanding on Christian faith.
It is not a coincidence the Church's decision to place the All Hallows Eve (The Day of All Saints) on "Halloween" feast on 1  November.

Pope_Gregory_III-icon-Catholic-Pope-who-fighted-iconoclasm-heresy

The feast of All Saints on its current date, is traced to the foundation by Pope Gregory III (731–741) – (who was a defender of true Orthodox Christian faith  and openly against the heresy of Iconoclasm) who set this date to be  "of the holy apostles and of all saints, martyrs and confessors, of all the just made perfect who are at rest throughout the world", the feast was moved to 1 November from the prior feast from 13 May suppressed.

With the emigration of many Europeans to America the secular Halloween feast has been transferred to America and set itself as one of the United States citizens tradition in which reminded emigrants for their homeland europe making the feast popularity to boast. The bloom of TV advertisement and the decrease of faith in people, increase of occult mindset in society made the feast primordial understanding to invert associating Halloween with evil which is fun in the mass. This is quite strange as evin the ancient pagans, had not associated with evil but used the feast as a mean to protect from evil. That's another sign in what kind of tragic state currently society is … sadly the feast Americanization made it to the number of "International feasts". And now there is almost no country where Halloween is not celebrated in a secular way.

It is not a hidden fact that Halloween feast for its connection with magical powers, paganism and occult is often believed and said to be 'A feast day for Witches and magicians', its considered important feast in Anton Sandor Lavey's Church of Satan.

A lot of parents nowdays does encourage their children to celebrate the feast not understanding the real Christian roots of it and teaching children to enjoy evil often without even realizing the psychological damage this makes to a kid.
Some countries such as Russia has already legislation prohibiting the pupils in school to mask like monsters and celebrate publicly the feast.
roman_catholic_christian_halloween_pumpkin
If you're a parent it is always a good idea to tell your kid that the truth is Halloween feast is not connected to darkness as it is often publicly illustrated but on the contrary Halloween tradition is early Christian one.

Religulous – An Atheist movie preaching false ideas about Christianity – Religulous Orthodox Christian perspective

Thursday, July 31st, 2014

Religulous-anti-Christian-movie-Psalm-14-vers-1-the-fool-said-in-his-heart-there-is-no-God
Most of my colleagues at work know I am Christian and as we have our lunch  together almost daily, have a friend talks in our rest time etc. … it is quite normally we have talks on topic of philosophy and religion.

Most of them (like a lot of IT people have atheistic views as most people nowdays, even though I'm sure they believe deep in their hearts in good and wait / search for God's salvation and mercy.)
In that short talks often, I've been pranked, questioned and probably even thought crazy for believing in the Lord Jesus Christ and the Holy Gospel. That's okay as this is normal as in almost all ages Christians, were mocked for their faith by skeptics and disbelievers.

In our talks often, my colleagues try to convince me their believe "There is no God" and they think in a way that religion is only for old fashioned and stupid people, because they think the modern dilusion that science and religion are controversial.
Since some time one of my colleague tells me about an atheistic movie of an atheist who made a movie called Religulous. After, I've been told about the movie about 5 times, I decided to spend some and research on it, because I firmly believe it is the next "holywood" style easily digestable movie made "the holywood way". Below is my rationalization and findings about the movie.

The movie title Religulous is selected as a prank from the word "Ridiculous". Before you further read I warn you if you're an Orthodox Christian to not watch it for it is not worthy to spend 1:40 minutes of your wife watching such a nonsense.

Religulous is American documentary film from 2008, directed by Larry Charles and starring comedian Bill Maher. In the Movie Bill Maher travels to different religion holy places (Jerusalem, Vatican, Salt Lake city) and pranks interviewing believers from variety of religions believes. Uneasy questions misleading questions are asked to different people and he makes prank of answers. Of course it is very easy to make someone a fool who doesn't have idea about basics of world religions and present your arguments in a convincing way among people who doesn't have deep understanding on Christianity branches and history.

If one takes a quick time to research on who is Bill Maher, he finds he is a ardently liberal who has deep disrespect and hate for Christianity based on a personal bitter experience in Catholicism (curiously his mother is Jewish) and one finds Maher disregards Christianity not based on facts but on personal bitter experiences from Roman Catholicism.
In religulous it is preached, that religion must die to liberate the family from unneeded slavery which is pretty much what the communists in the bolshevik revolution believed – meaning his idea is nothing new but rebranded atheism. Just for information, there were people with such hatred and ideas during the last 2000 years, so somehow this guy, reinvents the steel.

In the movie Maher travels the world with director of  Borat Cultural Learnings of America for  Make benefit Glorious notion of Khazakstan – Larry Charles (which is another mockery "commedy" movie).
Even by reading IMDB movie description gives you idea the movie is not serious and it is highly ridiculous to use such non-sense to attack Christianity, along which civilization gravitated and thanks to which we have a well developed modern civilization.  What Maher claims is about  1/3 of population on earth – 2.5 billion are stupid and inferior to atheists).

Here is IDMB's storyline quote:

Bill Maher interviews some of religion's oddest adherents. Muslims, Jews and Christians of many kinds pass before his jaundiced eye. Maher goes to a Creationist Museum in Kentucky, which shows that dinosaurs and people lived at the same time 5000 years ago. He talks to truckers at a Truckers' Chapel. (Sign outside: "Jesus love you.") He goes to a theme park called Holy Land in Florida. He speaks to a rabbi in league with Holocaust deniers. He talks to a Muslim musician who preaches hatred of Jews. Maher finds the unlikeliest of believers and, in a certain Vatican priest, he even finds an unlikely skeptic.

It is obvious from this description that the movie is not to consider serious and what the people on this movie would say is not to be considered authoritative as they're not even theologians, but random people. Also what Maher did in this movie is to select weak and mixed people to mock intentionally Christianity.

Even though in the movie various religions are mocked the accent of his mockery is christianity and this is not a coincidense but because, Christianity has most adherents.
The movie is highly manipulative, just like another openly anti-Christian movie Zeitgeist.
The guy opens the movie with a scene on Megiddo, Israel with a false claim that the end of the world is going to happen on this place.

I have heard some protestant Christians took Revalation chapter of Holy Bible and interpret the written there about an End of the World all world armies battle. Actually I'm not aware that this idea is ever preached by any orthodox Christian priest, monk or elder but it is more a "free interpretation" of the holy scriptures by some protestant denomination.
Actually an interesting thing about Megiddo is on Megiddo is located the earliest Christian Church, so I guess it is a not a coincidense movie criticism starts from there. The first half of the film is mostly focused on evangelical Christians, how they believe in things like a 5,000-year-old earth, etc. Maher takes a trip to the Creation Museum in Hebron, Kentucky, where he interviews creationism guru Ken Ham against the backdrop of animatronic dinosaurs with saddles (for humans to ride on).
And he also interviews young-earth evangelical Mark Pryor, a democratic senator from Arkansas who creates some of the funniest moments of the film. To be fair, Maher also interviews Christian evolutionist Francis Collins, but he too comes out looking a bit buffoonish.

All along the journey, Maher and Charles jazz up the images with achingly sardonic voiceovers and music, and some very clever quick-cut editing (inserting 2 seconds of Charlton Heston-as-Moses at opportune moments, for example).

To show off his openness Maher, smokes pot on camera obviously preaching "freedom" the american way and live quickly and die rock'n'roll culture message. The movie is quite agressive and made in a way to make converts. The movie presents the so called self-fulfilling prophecies, believed and preached by people involved into experimental psychology (which nowdays uses early occult and shamanistic magical methods and whose practices are not based on science but on believe).

Of course to make such a movie look authentic, any connection with real historic facts in the movie are omitted.

Maher's thesis that all things evil and destructive are a result of religious delusion simply does not hold water historically!
There are already thousands of recent proofs, that lack-of religion is not panacea for all problems, take for example communism in Russia and the disbandlement of the USSR, Communistic China and the countraless atheistic regimes throughout history leading to violence and calamity in the world, totally outside of any religious motivation.

To make the non-sense movie more fun and convincing, the psychologic method of mockery is heavily used,  everything in the movie is presented in a commedy form.

Religulous a movie meant to make religious people look stupid, to "prove" that religious belief and intelligence are mutually exclusive.

Maher spends the second half of the film undermining religions and cults of every shape and size. He goes to Utah and skewers Mormonism, interviews Puerto Rican cult leader Jose Luis De Jesus Miranda (who claims to be the Antichrist), and even gets high with a leader of a religion based around marijuana. He goes to the Vatican and interviews some crazy Catholic priest, and Jerusalem to deconstruct Judaism and Islam. Maher is particularly hard on Islam, offering somewhat surprising pronouncements about the inherent violence and barbarism of that most touchy of all world religions. At moments like these, Maher might actually find allies in conservative Christian circles??

In the movie, during a debate with a Christian, Maher repeats a version of Christ myth theory derived from Gerald Massey's 1907 thesis that the myth of the Egyptian deity Horus was the source of the story of Jesus. He makes riduculous connection between the Book of the Dead and Jesus Christ.

It is pretty interesting that we Christians are often being blamed for evangelism and because of that most of Christians, fear to talk about their faith, just because true Christian faith and modern society living in confort does not align well together.

The inner essence of man is very similar in both atheists, christian, muslims, jewish, buddhists hindu etc. we are all looking for a higher meaning in life sooner or later in life. We all live by certain believes daily (I know atheists would ignore it but, a lot of the actions even the hardest atheist takes are pushed by certain belief system and faith in something (disbelieve in God is also a faith just like believe in God). Actually being an atheist is a tough thing, because atheists just like us christians spend time to reinforce their disbelieve with, stories, question and answer sessions, scientific facts.

Most of atheists fall in the trap of disbelieve either because they're dishonest in their research on is there God? or because events in their life turned in a way they didn't wanted too (because of lack of what saints call humility) or because they want to justify their bad deeds. Anyways for good or bad most of people who define themselves as atheists and follow the "spiritual wind of the times" are nowadays living in the well developed high economies world and it is interesting that in this parts of the world, people have as heritage to live with general Christian mentality and Christian mindset. Christian understanding of life in most countries full of atheists is so strongly rooted in society and culture, so even the biggest anti-christ or atheist has a tendency to do goo. That a lot of those atheists who disbelieve God actually do Christiain deeds not realizing a lot of their deeds paradoxally are deeds of people who actually believe there is God.

I've noticed there are at least 3 types of atheists:

  • Passive
  • Indifferent
  • Militant (Active)

My personal observations on Atheism (as an ex-atheist), is that atheists have minimal or wrong understanding on different religions and know nothing about Orthodox Christianity and most even didin't hear about its existence, from the movie I got the impression Maher also doesn't have

I think it is not righteous to criticize Christianity without even taking full time to study it. As Orthodox Christianity is hard to grasp and unpopular faith, often the image of modern Christian is made up by protestant Church denominations and even in best cases by Roman Catholic church, so most people in even officially christian protestant / catholic countries does not have the opportunity to see true Christian ascetic faith which is still present in the Orthodox Church.

The most common attack of an atheist against Christianity is using arguments about the Roman Catholic's Crusades and Inquisition, which were conducted by the Roman Catholic Church. Most Atheists however does not knowthat in Orthodox Church, there was no inquisition and no Crusades.
Even worse Roman Catholic crusaders came and invaded and killed orthodox christians in the same way they killed anyone who rejected to accept their faith, this act never happened in Orthodox Church.

Passive and indifferent atheists often, keep calm and either haven't thought whether there is God or don't take position when one talks about faith.
Often passive and indifferent atheists are amazed to learn things pointing them that there is God and that the holy writtings are true.

The Militant (active) atheist is a rare thing to see nowadays as people are tought to be tolerant and respectful to others, however if you start talking on topic that has to deal with faith, somehow a lot of atheists start being agressive and blame you and your faith for responsible for all the evils that happened in the world.

Often active atheists are such because of some personal problem or disappointed connected to Christianity just like Maher. 
Maher and other atheists like him start developing blaming attitude to the Lord and the Church. The fact that Christianity doesn't fit someone's desires doesn't mean it is true.

In the movie one sees quite of crazy people and religious leaders, which are either uninformed about their faith or suffer from some mental problems, as with most movies to discredit Christianity, Orthodox Christianity stand point on faith is not shown. Maher suggests, as a alternative method to faith, the method of doubt actually by creating such a movie with the aim to discredit religion, he demonstrates totally the opposite, as all his findings are based on his personal faith that "There is no God" and Christianity is based on fairy-tales.

Faith has difficulties, there are a lot of sick people in the Church, things are not ideal in christian-dome, and we have to be careful not to believe or follow blindly everything we hear, but I think Maher's attitude is seriously disrespectful to things and people's believe.

In the movie, a lot of the people to be interviewed were radical and the movie makes an image of Christianity as very radical, but Maher and his movie is just like as radical as them. It is fact that there is radical things in many of protestant christian denominations and many start-up (newly believed) Christians, have the tendency to be radical, however to make his point solid  I think, Maher should have interviewed stable and educated theologian and not look for the weirdiest individuals and places in the world.

And often try to look for arguments to approve their disbelieve (finding such arguments is a tought think and this is why a lot of people who try to look for arguments against Christ and Christianity – like me some 10 years ago often end up Christian). There is not one or two movies made on topic of "Scientific Atheism" in same spirit as Religulous, if one research on the facts presented in this movie he quickly understands a lot of the presented movie facts are either untrue or are true but have nothing to do with authentic Christianity which one can find in the most ancient of Churches Eastern and Oriental Orthodox Churches (like for example Syriac Orthodox and Copts).

Religulous and atheistic movies from its genre are not based on true facts either historical or scientific and even often doesn't follow strong rationalism  but more or less on particular person believe. They're looking to disprove God looking from answers in a very biased way.

I would close the post with a quote from the Holy Bible Psalms chapter, clearly addressing atheist people like Maher.
 

The fool hath said in his heart, there is no God.
Psalm 14:1

Make Apache webserver fix spelling mistyped URL errors and serve files case insensitive with mod_speling

Wednesday, July 16th, 2014

make_apache_fix_mistyped_spelling_urls_errors_and_serve_files_case_insensitive_mod_speling_logo
On most if not all modern GNU / Linux distributions, Apache webserver comes preinstalled with mod_speling.

What mod_speling does is it tries to find and serve files and directories for non-existing  (404 return code) urls with a similar name to passed URL. Other thing mod_speling does is it serves files case-insensitive, even though the UNIX / Linux filesystems are built to understand files case-sensitive.

mod_speling is a very useful module especially when files are being pushed (synchronized) to Apache visible from web document folder from operating systems like Windows whose filesystem doesn't store files case sensitive.

Let me give you a small example on M$ Windows a create file NewFile.html, NEWFILE.HTML, NeWfIlE.Html etc. are one and the same file newfile.html and not 3 different files like it is usually on UNIX / Linux filesystems.

If you happen to migrate old static Websites from Microsoft Internet Information Services (IIS) to UNIX / Linux based hosting. Often Html coders which create websites on Windows platform doesn't respect in website hyperlinks case-sensitive, because anyways Windows FS is case-insetive, thus moving the website to Linux host with Apache the website/s will end up with many 404 error pages, whose fixing for big static websites will be a real pain in the ass.

Also there might be need for mod_speling module enabled, for PHP / Python / Perl websites developed on MS Windows platform and tested on Windows host and then officially to be deployed on Linux.

Note that mod_speling name as a funny thing as actually the module is also converting mis-pelled / mis-typed Apache URLs:

If for example, someone tried to link to your website from a forum mistyping the URL address with mod_speling the mistyped URL could still be handled to open the real existing URL:

Lets say you have URL:
 

http://your-domain.com/files/what-Ever-fle.php


and the actual URL is:

http://your-domain.com/files/what-Ever-file.php

 

mod_speling will make Apache scan in /files/ for any files with similar name to what-Ever-fle.php and will open any similar matched file name, preventing you from the normal 404 error and therefore often serving exactly what it has to. Of course such a behavior could be unwanted in same cases for CMSes, which depend on 404 error code for proper operating, so be very sure when configuring mod_speling that this is exactly what you need.

mod_speling can be also useful sometimes for Search Engine Optimization – SEO, as it will show less 404 pages to Crawler search engine bots.

1. Enable mod_speling module on Debian GNU / Linux and Ubuntu

Enabling mod_speling in Apache in Debian / Ubuntu etc. debian based Linuxes is done with either creating symlink from /etc/apache2/mods-available/speling.load to /etc/apache2/mods-enabled/speling.load :
 

ln -sf /etc/apache2/mods-available/speling.load /etc/apache2/mods-enabled/speling.load

Or by using a2enmodDebian apache module enabling script:
 

a2ensite sitename


To enable mod_speling mis-speling resolve feature config directive is:

 

CheckSpelling on


To disable case sensitivity – as I said earlier helpful for migrations from Microsoft Windows hosts to Linux, use directive:

CheckCaseOnly on


To enable both use:

<IfModule mod_speling.c>
    CheckCaseOnly on
    CheckSpelling on
</IfModule>

Enabling mod_speling case-insensitivity and fixing mistypes in URL could be done from .htaccess, for any <Directory> (vhost) with enabled .htaccess with

AllowOverride All

To enable it for default set host in new Apache install place it in /etc/apache2/apache2.conf and /etc/apache2/sites-enabled/000-default

Then as usual to make the configuration changes take affect, restart Apache:
 

/etc/init.d/apache2 restart


2. Enablig mod_speling on CentOS, RHEL and Fedora Linux

 

Most of RPM based Linux distributions have already mod_speling by default in Apache, so there will be no need to explicitly enable the module within HTTPD.

To check whether mod_speling is already enabled in httpd issue:
 

/usr/sbin/httpd -M |grep -i mod_speling


If you don't get no output from command this means the module is not enabled. This is the case with CentOS Linux 6.5 for example …

To enable mod_speling on Apache level add in /etc/httpd/conf/httpd.conf

LoadModule speling_module modules/mod_speling.so

and restart webserver
 

/etc/init.d/httpd restart


If you get instead
 

/usr/sbin/httpd -M |grep -i mod_speling
speling_module (shared)

 

Then it is already loaded in HTTPD to enable the module for default domain add to /etc/httpd/conf/httpd.conf – within (<Directory "/var/www/html">),

<IfModule mod_speling.c>
    CheckCaseOnly on
    CheckSpelling on
</IfModule>

Or if you want to make it active for specific directories within /var/www/html/whatever-dir use either new <Directory ..> directive within Apache config, or enable .htaccess processing with AllowOverride All and place them in .htaccess . For complete mod_speling reference check on Apache's official website

Windows add command to PATH variable – Adding (Putty, VIM) new binaries folder to windows %PATH%

Friday, June 27th, 2014

windows-add-to-path-location-of-new-binaries-putty-vim-etc-system-properties-environment-variable-screenshot
I want to use vim (text editor) on my Windows 7 work computer and hence installed VIM (VI Improved) port for Windows GVim.
VIM works perfect on Windows and for those coming from UNIX background having it installed is a must, however vim doesn't include a PATH location to its (vim) executable in Windows %PATH%.
PATH command line variable stores path locations to all binaries that could be executed directly from cmd line with no need to type full directory path to binary.

To illustrate what PATH is lets say you want to make Putty accessible straight from Windows command line (cmd.exe), you can add Putty's installation Path Folder to global Windows %PATH%. On my 64-bit Windows PC Putty binary is installed in C:Program Files (x86)PuTTY.

echo %PATH%
 

C:Perl64sitebin;C:Perl64bin;C:Program FilesRA2HP;C:Windowssystem32;C:
Windows;C:WindowsSystem32Wbem;C:WindowsSystem32WindowsPowerShellv1.0;C:
Program FilesWIDCOMMBluetooth Software;C:Program FilesWIDCOMMBluetooth Sof
twaresyswow64;C:Program Files (x86)Hewlett-PackardHP ProtectTools Security M
anagerBin;C:Program FilesActivIdentityActivClient;C:Program Files (x86)A
ctivIdentityActivClient;C:Program Files (x86)QuickTimeQTSystem


To make Putty accessible only by typing Putty instead of typing C:Program Files (x86)PuTTYPutty.exe, it has to be included in PATH, normally from Win command line (cmd.exe). This is done with:

 

set PATH=%PATH%;C:Program Files (x86)PuTTY

 

echo %PATH%

 

C:Usersggeorgi7Desktop>echo %PATH%
C:Perl64sitebin;C:Perl64bin;C:Program FilesRA2HP;C:Windowssystem32;C:
Windows;C:WindowsSystem32Wbem;C:WindowsSystem32WindowsPowerShellv1.0;C:
Program FilesWIDCOMMBluetooth Software;C:Program FilesWIDCOMMBluetooth Sof
twaresyswow64;C:Program Files (x86)Hewlett-PackardHP ProtectTools Security M
anagerBin;C:Program FilesActivIdentityActivClient;C:Program Files (x86)A
ctivIdentityActivClient;C:Program Files (x86)QuickTimeQTSystem;C:Program
Files (x86)PuTTY

To check all the exported variables, use SET command, here is my default SET variables:

C:> SET
 

ALLUSERSPROFILE=C:ProgramData
APPDATA=C:UsersgeorgiAppDataRoaming
CLASSPATH=.;C:Program Files (x86)Javajre6libextQTJava.zip
CommonProgramFiles=C:Program FilesCommon Files
CommonProgramFiles(x86)=C:Program Files (x86)Common Files
CommonProgramW6432=C:Program FilesCommon Files
COMPUTERNAME=GEORGI
ComSpec=C:Windowssystem32cmd.exe
DEFLOGDIR=C:ProgramDataMcAfeeDesktopProtection
FP_NO_HOST_CHECK=NO
HOMEDRIVE=C:
HOMEPATH=Usersggeorgi7
LOCALAPPDATA=C:Usersggeorgi7AppDataLocal
LOGONSERVER=G1W4730
NUMBER_OF_PROCESSORS=4
OS=Windows_NT

To make inclusion of VIM, Putty or other binary directory) into PATH variable permanent:


From Windows desktop, right-click My Computer and click Properties.
In the Advanced system settings click on Properties window, click on the Advanced tab.
In the Advanced System section, click the Environment Variables button.


windows-add-command-to-path-variable-adding-new-folder-to-windows-path-add-putty-vim-to-easy-execute
Finally, in the Environment Variables window, search for the Path variable in Systems Variable section and click the Edit button.
Add or modify the path lines including the paths to binaries you wish to be easy access.
Note that each different directory should be separated with a semicolon (;), e.g.
 

C:Program Files;C:Winnt;C:WinntSystem32; C:Perl64bin

 

 

What is Vertical scaling and Horizontal scaling – Vertical and Horizontal hardware / services scaling

Friday, June 13th, 2014

horizontal-vs-vertical-scaling-vertical-and-horizontal-scaling-explained-diagram

If you're coming from a small or middle-sized company to a corporations like HP or IBM probably you will not a clear defined idea on the 2 types (2 dimensions) of system Scaling (Horizontal and Vertical scaling). I know from my pesronal experience that in small companies – all needed is to guarantee a model for as less probels as possible without too much of defining things and with much less planning. Other thing is being a sysadmin in middle-sized companies, often doesn't give you opportunity to discuss issues to solve with other admins but you have to deal as "one man (machine) for all" and thus often to solve office server and services tasks you do some custom solution.
hence for novice system administrators probably it will be probably unclear what is the difference between Horizontal and Vertical Scaling?

horizontal-vertical-scaling-scale-up-and-scale-out-server-infrastructure-diagram

 

Vertical Scaling (scale vertically or scale up) :- adding more resources(CPU/RAM/DISK) to your server (database or application server is still remains one).
Vertical Scaling is much more used in small and middle-sized companies and in applications and products of middle-range. Very common example for Virtual Scaling nowdays is to buy an expensive hardware and use it as a Virtual Machine hypervisor (VMWare ESX). Where a database is involved using Vertical Scaling without use of multiple virtual machines might be not the best solution, as even though hardware might suffice (creation of database locks might impose problems). Reasons to scale vertically include increasing IOPS (Input / Ouput Operations), increasing CPU/RAM capacity, and increasing disk capacity.
Because Vertical Scaling usually means upgrade of server hardware – whenever an improved performance is targeted, even though if Virtualization is used, the risk for downtimes with it is much higher than whenever horizontal scaling.

Horizontal Scaling (scale horizontally or scale out):- adding more processing units (phyiscal machine) to your server (infrastructure be it application web/server or database).
Horizontal scaling, means increasing  the number of nodes in the cluster, reduces the responsibilities of each member node by spreading the keyspace wider and providing additional end-points for client connections. The capacity of each individual node does not change, but its load is decreased (because load is distributed between separate server nodes). Reasons to scale horizontally include increasing I/O concurrency, reducing the load on existing nodes, and increasing disk capacity.
Horizontal Scaling has been historically much more used for high level of computing and for application and services. The Internet and particular web services gave a boom of Horizontal Scaling use, most companies nowadays that provide well known web services like Google (Gmail, Youtube), Yahoo, Facebook, Ebay, Amazon etc. are using heavily horizontal scaling. Horizontal Scaling is a must use technology – whenever a high availability of (server) services are required.

Create local network between virtual machines in Virtualbox VM – Add local LAN between Linux Virtual Machines

Wednesday, June 11th, 2014

add-virtualbox-virtual-machines-inside-local-network-create-internal-LAN-local-net-linux-windows

I want to do test MySQL Cluster following MySQL Cluster Install Guide for that purpose, I've installed 2 version of CentOS 6.5 inside Virtualbox and I wanted to make the 2 Linux hosts reachable inside a local LAN network, I consulted some colleagues who adviced me to configure two Linux hosts to use Bridget Adapter Virtualbox networking (Network configuration in Virtualbox is done on a Virtual Machine basis from):
 

Devices -> Network Settings

(Attached to: Bridged Adapter)

Note!: that by default Cable Connected (tick) is not selected so when imposing changes on Network – tick should be set)
After Specifying Attached to be Bridged Adapter to make CentOS linux refresh network settings run in gnome-terminal:

[root@centos ~]# dhclient eth0

However CentOS failed to grab itself DHCP IP address.
Thus I tried to assign manually IP addresses with ifconfig, hoping that at least this would work, e.g.:

on CentOS VM 1:

/sbin/ifconfig eth0 192.168.10.1 netmask 255.255.255.0

on CentOS VM 2:

/sbin/ifconfig eth1 192.168.10.2 netmask 255.255.255.0

To test whether there is connection between the 2 VM hosts tried ping-ing 192.168.10.2 (from 192.168.10.1) and tested with telnet if I can access remotely SSH (protocol), from CentOS VM2 1 to CentOS VM2 and vice versa, i.e.:

[root@centos ~]# telnet 192.168.10.2 22

 

Trying 192.168.10.2…
telnet: connect to address 192.168.10.2: No route to host

Then after checking other options and already knowing by using VBox NAT network option I had access to the internet, I tried to attach a standard local IP addresses to both Linux-es as Virtual interfaces (e.g eth0:1), .e.g:

On Linux VM 1:

/sbin/ifconfig eth0:0 192.168.10.1 netmask 255.255.255.0

On Linux VM 2:

/sbin/ifconfig eth1:0 192.168.10.2 netmask 255.255.255.0

Then to test again used telnet

[root@centos ~]# telnet 192.168.10.2 22

Then I found Virtualbox has a special Internal Networking support

to choose in Attached to drop down menu. According to Internal Networking Virtualbox instructions to put two Virtual Machine hosts inside an Internal network they should be both set in Internal network with identical name.
P. S. It is explicitly stated that using Internal Network will enable access between Guest Virtual Machines OS, but hosts will not have access to the Internet (which in my case doesn't really mattered as I needed the two Linux VMs just as a testbed)

virtualbox-create-internal-local-network-between-guest-host-Linux-Windows1

I tried this option but it doesn't work for me for some reason, after some time of research online on how to create local LAN network between 2 Virtual Machines luckily I decided to test all available Virtualbox Networking choices and noticed Host-only adapter.

Selecting Host-only Adapter and using terminal to re-fetch IP address over dhcp:

virtualbox-connect-in-local-lan-network-linux-and-windows-servers-hosts-only-adapter

On CentOS VM1

dhclient eht0

On CentOS VM2

dhclient eth1

assigned me two adjoining IPs – (192.168.56.101 and 192.168.56.102).

Connection between the 2 IPs 192.168.56.101 and 192.168.56.102 on TCP and UDP and ICMP protocol works, now all left is to install MySQL cluster on both nodes.

 

Ditaa convert ASCII diagrams into bitmap graphic (pictures)

Monday, May 12th, 2014

ditta_convert-ascii-art-diagram-to-png-jpg-picture
As part of my passion for ASCII art, I've found another interesting tool useful to ASCII art maniacs like me, the tool is called ditta and is able to convert manually drawn ASCII art diagrams to graphics, below is tool description from my debian apt-cache as well as a screenshot:

 apt-cache show ditaa|grep -i ditaa -A 4

Package: ditaa
Priority: optional
Section: graphics
Installed-Size: 164
Maintainer: David Paleino <dapal@debian.org>

Filename: pool/main/d/ditaa/ditaa_0.9+ds1-2_all.deb
Size: 107270
MD5sum: 05ec52d9274b954b053f1835ca5d7a7f
SHA1: 792d91d05fff2a2a19c0ebce317351d138436c18
SHA256: c4319d32e7918aab782e2f38cdad745bc9023f9f09a999033d983095ee4f70d5

 DiTAA is a small command-line utility that can convert diagrams drawn using
 ASCII art ("drawings" that contain characters that resemble lines, like | /
 and -), into proper bitmap graphics.
 .
 DiTAA also uses special markup syntax to increase the possibilities of shapes
 and symbols that can be rendered.
Homepage: http://ditaa.org

 

To install ditaa on Debian and Ubuntu Linux:

debian:~# apt-get install --yes ditaa
...

Ditaa text diagram to Graphics converter is also available in Fedora Linux and in Source RPMs to be used on Redhat Based RPM distributions.
To install in most of RPM based Linuxes:

[root@fedora:~]# yum install -y ditaa

For most people probably Ditta will not be of any value except as a PoC and of a Hack value just like Ditaa's home page suggests. Nomatter that Ditta is cool but has just 2 drawback it doesn't understand non-latin characters i.e. Cyrillic and requires Java Virtual Machine .. but if you're a real geek you will do  the sacrifice to install a whole bunch of the heavy java for the sake of some oldschool fun 🙂 Being written in Java makes Ditta multi-platform, but you will need a Java VM version of at least 1.6 (it doesn't work with Java 1.5).

The format Ditta understands is close to HTML

<ditaa [optional parameters]>
 
... (some ditaa-code) ...
 
</ditaa>


There are also special tags understood by Ditta which are automatically turned into shaped graphical buttons and forms.
 

Possible tags

Not all shape selector tags are documented on the ditaa site. A quick source scan revealed:

tag Description
{c} decision(Choice)
{d} document
{io} input/output, parallelogram
{mo} manual operation
{o} ellipse, circle
{s} storage
{tr} trapezoid (looks like an inverted {mo} )

Here is an example Ditta code
 

<ditaa round noedgesep right>
+--------+   +-------+    +-------+
|        | --+ ditaa +--> |       |
|  Text  |   +-------+    |diagram|
|Document|   |!magic!|    |       |
|     {d}|   |  c478 |    |       |
+---+----+   +-------+    +-------+
:                         ^
|       Lots of work      :
+-------------------------+
</ditaa>

This Ditta code will generate following picture:

ditaa_convert-ascii-art-picture-to-graphic-png-jpg-bmp


To learn more on ditta please check Ditaa's Project homepage on Sourceforge
Many thanks to Cybercity's 30 Cool Open Source Software of 2013 for inspiring this post.